您好,登錄后才能下訂單哦!
本篇文章為大家展示了怎么在Django中使用Uedit富文本編輯器,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
一、安裝及基本配置
1. settings.py
INSTALLED_APPS = [ ... 'DjangoUeditor', ... ]
2. 配置urls
from django.conf.urls import url, include urlpatterns = [ # 富文本相關(guān)url url(r'^ueditor/', include('DjangoUeditor.urls')), ]
3. 字段信息
在需要使用富文本的字段所在的models.py中
from DjangoUeditor.models import UEditorField class Articles(models.Model): ... content = UEditorField(width=1200, height=600, imagePath="article/ueditor/", filePath="article/ueditor/",verbose_name=u"文章內(nèi)容") ...
注意,在要使用ueditor的字段所在adminx.py的類中,添加
# 這樣就指定了course的detail字段使用ueditor富文本編輯器 class ArticlesAdmin(object): ... style_fields = {"content":"ueditor"}
二、Ueditor插件制作
1. 插件代碼
在extra_apps.xadmin.plugins中新建ueditor.py
import xadmin from xadmin.views import BaseAdminPlugin, CreateAdminView, ModelFormAdminView, UpdateAdminView from DjangoUeditor.models import UEditorField from DjangoUeditor.widgets import UEditorWidget from django.conf import settings class 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中注冊(cè)插件
在extra_apps.xadmin.plugins.__init__.py中添加
PLUGINS = ( ... 'ueditor', )
友情提醒
在Django中使用富文本編輯器
在HTML頁面中,Django處于安全考慮,將文本內(nèi)容默認(rèn)轉(zhuǎn)義,我們需要關(guān)閉
來正常輸出我們的文章
{% autoescape off %} {{ article.abstract }} {% endautoescape %}
記錄一下,空格的轉(zhuǎn)義字符分為如下幾種:
1. &160#;不斷行的空白(1個(gè)字符寬度)
2.  &8194#;半個(gè)空白(1個(gè)字符寬度)
3.  &8195#;一個(gè)空白(2個(gè)字符寬度)
4.  &8201#;窄空白(小于1個(gè)字符寬度)
上述內(nèi)容就是怎么在Django中使用Uedit富文本編輯器,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。