zoukankan      html  css  js  c++  java
  • xadmin 集成ueditor

    GitHub搜索 djangoueditor 查看使用教程

    下载djangoueditor或者 直接使用源码包
    配置ueditor url:
    url('^ueditor/', include('DjangoUeditor.urls')),

    写xadmin插件:
    xadmin/plugins 目录下添加 一个文件(ueditor.py)
    文件内容如下:

    -- coding: utf-8 --

    author = 'bobby'

    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)

    xadmin/plugins 下面的 init.py 注册刚刚写好的插件

    修改需要使用Ueditor 的adminx文件中的相应类:
    添加style_fields= { }

    class GoodsAdmin(object):
    style_fields = {"goods_desc":"ueditor"}

    前端不能正常显示是因为django开启的 自动转义(类似

  • 相关阅读:
    第二次团队介绍
    团队介绍
    随手记解决的问题
    iOS 接入支付 --- 支付宝支付
    GCD 以及设计模式
    iOS 小技巧总结
    tabBar 的上拉隐藏,上拉显示实现
    iOS开发---冷门小技巧
    iOS开发:盘点常用的几种设计模式 --(转自 liwei3gjob的专栏)
    OC --(9)-- 内存管理初级:内存管理的方式、引用计数机制,影响计数的各个方法、dealloc方法、内存管理的基本原则、掌握copy的实现
  • 原文地址:https://www.cnblogs.com/yushengzhou/p/9623062.html
Copyright © 2011-2022 走看看