在python3里面使用ueditor(基于adminx)

第一步,下载ueditor,在git上下载

直接download

https://github.com/twz915/DjangoUeditor3/ 

然后放到任何一个文件夹里面

配置setting and urls

1
INSTALLED_APPS = [<br>'DjangoUeditor',<br>]<br><br>#在工程里面新建 media的文件上传目录<br>MEDIA_URL ='/media/'<br>MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
1
#urls里面配置<br>from extra_apps.DjangoUeditor import  urls as DjangoUeditor_urls<br><br>urlpatterns = [<br>    path('ueditor/', include(DjangoUeditor_urls)),<br>]

 

然后改app里面的model,

1
text = UEditorField(verbose_name='文本记录',width=600, height=400,imagePath='user/ueditor/',filePath='user/ueditor/',default='')

 

然后在adminx.py里面写下调用类型

style_fields = {'text':'ueditor'}

 

然后在adminx的plugin写ueditor插件

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

 

在plugins里面的_init_.py里面配置好 ueditor

1
PLUGINS = (<br>'ueditor'<br>)

ok

如果不出意外,应该已经生效了。可以调用了

 

https://www.cnblogs.com/tiantianhappy/p/10286528.html 

 

posted @   kpbiao  阅读(944)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示