国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Django框架使用富文本編輯器Uedit的方法分析

2020-02-15 22:36:44
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Django框架使用富文本編輯器Uedit的方法。分享給大家供大家參考,具體如下:

Uedit是百度一款非常好用的富文本編輯器

一、安裝及基本配置

官方GitHub(有詳細(xì)的安裝使用教程):https://github.com/zhangfisher/DjangoUeditor

1. settings.py

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

2. 配置urls

from django.conf.urls import url, includeurlpatterns = [# 富文本相關(guān)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"文章內(nèi)容")  ...

注意,在要使用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處于安全考慮,將文本內(nèi)容默認(rèn)轉(zhuǎn)義,我們需要關(guān)閉

來正常輸出我們的文章

{% autoescape off %}{{ article.abstract }}{% endautoescape %}            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 石屏县| 克什克腾旗| 望江县| 蕲春县| 屏山县| 东莞市| 渑池县| 马边| 南丹县| 宁远县| 静宁县| 双鸭山市| 锦屏县| 班玛县| 榕江县| 舒兰市| 尚志市| 西城区| 朝阳区| 云南省| 二连浩特市| 德阳市| 上饶县| 宁强县| 鹤岗市| 青冈县| 太原市| 澄城县| 射阳县| 当阳市| 富民县| 长葛市| 神木县| 郎溪县| 西乌珠穆沁旗| 阿拉善右旗| 南溪县| 荔波县| 景东| 长宁区| 玉屏|