香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

Django框架使用富文本编辑器Uedit的方法分析


时间:2022-01-11 10:29 作者:admin610456


本文实例讲述了Django框架使用富文本编辑器Uedit的方法。分享给大家供大家参考,具体如下:

Uedit是百度一款非常好用的富文本编辑器

一、安装及基本配置

官方GitHub(有详细的安装使用教程):https://github.com/zhangfisher/DjangoUeditor

1. settings.py

INSTALLED_APPS = [  ...  'DjangoUeditor',  ...]

2. 配置urls

from django.conf.urls import url, includeurlpatterns = [# 富文本相关url  url(r'^ueditor/', include('DjangoUeditor.urls')),]

3. 字段信息

在需要使用富文本的字段所在的models.py中

from DjangoUeditor.models import UEditorFieldclass Articles(models.Model):  ...  content = UEditorField(width=1200, height=600, imagePath="article/ueditor/",              filePath="article/ueditor/",verbose_name=u"文章内容")  ...

注意,在要使用ueditor的字段所在adminx.py的类中,添加

# 这样就指定了course的detail字段使用ueditor富文本编辑器class ArticlesAdmin(object):  ...  style_fields = {"content":"ueditor"}

二、Ueditor插件制作

1. 插件代码

在extra_apps.xadmin.plugins中新建ueditor.py

import xadminfrom xadmin.views import BaseAdminPlugin, CreateAdminView, ModelFormAdminView, UpdateAdminViewfrom DjangoUeditor.models import UEditorFieldfrom DjangoUeditor.widgets import UEditorWidgetfrom django.conf import settingsclass XadminUEditorWidget(UEditorWidget):  def __init__(self, **kwargs):    self.ueditor_options=kwargs    self.Media.js = None    super(XadminUEditorWidget, self).__init__(kwargs)class UeditorPlugin(BaseAdminPlugin):  def get_field_style(self, attrs, db_field, style, **kwargs):    if style == 'ueditor':      if isinstance(db_field, UEditorField):        widget = db_field.formfield().widget        param = {}        param.update(widget.ueditor_settings)        param.update(widget.attrs)        return {'widget': XadminUEditorWidget(**param)}    return attrs  def block_extrahead(self, context, nodes):    js = '<script type="text/javascript" src="%s"></script>' % (settings.STATIC_URL + "ueditor/ueditor.config.js")    js += '<script type="text/javascript" src="%s"></script>' % (settings.STATIC_URL + "ueditor/ueditor.all.min.js")    nodes.append(js)xadmin.site.register_plugin(UeditorPlugin, UpdateAdminView)xadmin.site.register_plugin(UeditorPlugin, CreateAdminView)

2. xadmin中注册插件

在extra_apps.xadmin.plugins.__init__.py中添加

PLUGINS = (  ...  'ueditor',)

友情提醒

在Django中使用富文本编辑器

在HTML页面中,Django处于安全考虑,将文本内容默认转义,我们需要关闭

来正常输出我们的文章

{% autoescape off %}{{ article.abstract }}{% endautoescape %}

记录一下,空格的转义字符分为如下几种:

1. &nbsp;&160#;不断行的空白(1个字符宽度)

2. &ensp;&8194#;半个空白(1个字符宽度)

3. &emsp;&8195#;一个空白(2个字符宽度)

4. &thinsp;&8201#;窄空白(小于1个字符宽度)

平时一般用的是&nbsp;但是在中文中也许有时候更适合用&emsp;

希望本文所述对大家基于Django框架的python/' target='_blank'>python程序设计有所帮助。

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)