Code前端首页关于Code前端联系我们

如何使用Django项目的富文本编辑器DjangoUeditor?扩展属性有哪些?

terry 2年前 (2023-09-24) 阅读数 55 #后端开发

1。什么是 DjangoUeditor?

Ueditor HTML编辑器是百度开源的HTML编辑器。它具有非常强大的功能。例如,可以直接拖动表格来调整单元格大小等。DjangoUeditor将这个编辑器集成到一个可以直接在Django项目中使用的应用程序中。让Django项目轻松使用这个编辑器。

2。如何获取DjangoUeditor

可以从官方Github下载,然后添加到自己的项目中。官方Github地址:https://github.com/zhangfisher/DjangoUeditor,但由于官方版本已经很久没有更新了,目前只支持Python2.7。如果要使用Python3.6,需要修改才能编译成功。好消息是您不必自己更改它。 MOOC.com的老师已经对其进行了修改,并且兼容Python2.7和3.6。您可以直接使用它。使用,这就是开源的魔力,好东西就应该收藏,我也fork到了自己的github,地址:https://github.com/KenZP/DjangoUeditor3_imooc,无限期有效,大家可以下载使用。

3。如何安装 DjangoUeditor

a。在你自己的项目中,创建一个与apps同级的extra_apps。该文件存储所有第三方应用程序。将下载的DjangoUeditor放入extra_apps中。 2 将以下url添加到.py文件的url模式中:

url(r'^ueditor/', include('DjangoUeditor.urls')),

此时DjangoUeditor已经安装完毕,我们可以使用它了。

4。如何使用DjangoUedit

安装后,我们只需要更改模型中需要使用此插件的字段即可。比如文章中的内容字段,默认是这样的:

body = models.TextField(default="", verbose_name="文章内容")

如果你想使用Ueditor,只需要做如下修改即可:

body = UEditorField(default="", verbose_name="文章内容")

因为使用了UEditorField,所以需要导入这个模块

from DjangoUeditor.models import UEditorField

可以发现它和django模型领域完全无缝对接,而且还扩展了很多属性。您只需添加您需要的属性即可。 。

这样配置完后,对数据库进行make迁移和迁移。进入后台,你会发现文章内容输入框已经是Ueditor界面了,有很多丰富的功能,如图:

Django项目富文本编辑器DjangoUeditor如何用?扩展属性有哪些? Django项目富文本编辑器DjangoUeditor如何用?扩展属性有哪些?

5。 DjangoUeditor有哪些扩展属性?

  • 宽度、高度:编辑器的宽度和高度,以像素为单位。
  • 工具栏:配置要显示的工具栏。取值有mini、normal、full,分别代表小、正常、全部。如果标准工具栏中的按钮数量不能满足您的要求,您可以在设置中配置自己的屏幕按钮。见后面的介绍。
  • imagePath:图片上传后保存的路径,例如“images/”,上传到“{{MEDIA_ROOT}}/images”文件夹。注意:如果imagePath值仅指定文件夹,则必须以“/”结尾。 ImagePath 可以格式化为 python 字符串:例如“images/%(basename)s_%(datetime)s.%(extname)s”,像这样如果上传 test.png,文件将保存为“{ { MEDIA_ROOT}}/images/test_20140625122399.png”。 imagePath 中可以使用的变量有:
    • time:上传时间,datetime.datetime.now( ).strftime("%H%M%S")
    • date:上传日期,datetime .datetime.now ().strftime("%Y%m%d")
    • datetime:上传日期时间和日期,datetime.datetime.now().strftime("%Y%m%d%H %M%S" )
    • 年:年
    • 月:月
    • 日:日
    • rnd:三位数随机数,random.randrange(100,999)❀name❓上传文件的basename,不包括文件扩展名
    • extname:上传文件的文件扩展名
    • filename:上传文件的全名
  • filepath:附件上传后保存的路径。设置规则与imagePath相同。
  • upload_settings:字典值,示例:upload_settings={ imagePathFormat:"images/%(basename)s_%(datetime)s.%(extname)s", imageMaxSize:323232 fileManagerListPath:"files" }上传内容为ueditor/php/config.json的配置内容。因此,您可以查看config.json或官方文档内容来决定如何配置upload_settings。基本上是用来配置上传路径和可以上传的文件类型。 、最大上传文件大小等。
  • 上面的imagePath和filePath是单独提取出来配置的,因为这两个参数用的最多。 imagePath相当于upload_settings中的imagePathFormat,filePath相当于upload_settings中的filePathFormat。
  • 你已经在upload_settings中设置了imagePathFormat,你也可以在UeditorField中设置imagePath,效果是一样的。但是,如果两者都设置,则 imagePath 具有更高的优先级。
  • 如果涂鸦文件、截图、外部快照、图片库的xxxxPathFormat没有配置,则默认为imagePath。
  • 如果不配置外部文件库的xxxxPathFormat,则默认为filePath。
  • settings:字典值,配置元素对应ueditor/ueditor.config.js中的配置元素。
  • 命令:可以在Ueditor中添加按钮、下拉框和对话框
  • 版权声明

    本文仅代表作者观点,不代表Code前端网立场。
    本文系作者Code前端网发表,如需转载,请注明页面地址。

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    热门