【Django组件】DjangoUeditor富文本使用,更新至Django3.0.2+
1:下载编辑器
适配版本: python3
下载地址:https://github.com/twz915/DjangoUeditor3
2:创建文件夹放入包
创建包extra_apps,将包放入文件夹里,右键点击extra_apps选中菜单mark directory as 选择 sources root 就可以编程蓝色文件夹目录,如图所示,
3:配置DjangoUeditor3
1:路由配置:打开ulrs.py, 添加路由:
url(r'^ueditor/',include('extra_app.DjangoUeditor.urls'))
2:配置settings.py:
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))
'DjangoUeditor.DjangoUeditor',
4:创建数据表,注入admin
1:导入编辑器定义的格式:from DjangoUeditor.DjangoUeditor.models import UEditorField
2:创建数据表设置:
class Article(models.Model): title = models.CharField(max_length=100, verbose_name='标题') content = UEditorField(width=600, height=300, toolbars="full", imagePath="images/", filePath="files/", upload_settings={"imageMaxSize": 1204000}, settings={}, verbose_name='内容') class Meta: verbose_name = "富文本文章" verbose_name_plural = verbose_name db_table = 'Article'
3:注入admin:
class ArticleAdmin(admin.ModelAdmin): list_display = ('title',) admin.site.register(models.Article, ArticleAdmin)
5:效果图
前端渲染:
PS:django3.0.2的报错原因,移除了six,处理方法如下:
单独安装 six==> pip3 install six
(1)DjangoUEditor目录下的views.py文件中有如下行
from django.utils.six.moves.urllib.request import urlopen
from django.utils.six.moves.urllib.parse import urljoin
改为:
from six.moves.urllib.request import urlopen from six.moves.urllib.parse import urljoin
(2)widgets.py文件中有如下一行:
from django.utils.six import string_types 修改为: from six import string_types
(3)urllib似乎已从six之中独立出来,故commands.py文件中的如下一行:
from django.utils.six.moves.urllib.parse import urljoin 改为: from urllib.parse import urljoin
(4)utils.py修改six:
import six
修改后的下载版本:
链接:https://pan.baidu.com/s/1dMaVp-vWvLwWmmxEEezP_Q
提取码:jgof
PS:图片前端渲染出不来,没有域名:
views.py文件里面的234行,在url前面添加上域名
Python全栈(后端、数据分析、脚本、爬虫、EXE客户端) / 前端(WEB,移动,H5) / Linux / SpringBoot / 机器学习