Python ckeditor富文本编辑器代码实例解析


Posted in Python onJune 22, 2020

1.安装第三方模块包

pip install django-ckeditor

2.添加应用

INSTALLED_APPS = [
  ...
  'ckeditor', # 富文本编辑器
  'ckeditor_uploader', # 富文本编辑器上传图片模块
  ...
]

3. 添加CKEditor设置

# 富文本编辑器ckeditor配置
CKEDITOR_CONFIGS = {
  'default': {
    'toolbar': 'full', # 工具条功能
    'height': 300,   # 编辑器高度
    # 'width': 300,   # 编辑器宽
  },
}
CKEDITOR_UPLOAD_PATH = '' # 上传图片保存路径,留空则调用django的文件上传功能

4. 添加ckeditor路由

在总路由中添加

path(r'^ckeditor/', include('ckeditor_uploader.urls')),

5. 为模型类添加字段

ckeditor提供了两种类型的Django模型类字段

  • - `ckeditor.fields.RichTextField` 不支持上传文件的富文本字段
  • - `ckeditor_uploader.fields.RichTextUploadingField` 支持上传文件的富文本字段\

6.修改course/models.py里面的字段信息,记得要重新数据迁移

from ckeditor_uploader.fields import RichTextUploadingField
class Course(models.Model):
  """
  专题课程
  """
  ...
# 使用这个字段的原因

# brief = models.TextField(verbose_name="详情介绍", null=True, blank=True)

brief = RichTextUploadingField(verbose_name="详情介绍", null=True, blank=True)
#使用富文本编辑提供的内容

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
写了个监控nginx进程的Python脚本
May 10 Python
pygame学习笔记(6):完成一个简单的游戏
Apr 15 Python
Python将图片批量从png格式转换至WebP格式
Aug 22 Python
Django在win10下的安装并创建工程
Nov 20 Python
Python网络爬虫中的同步与异步示例详解
Feb 03 Python
python3实现基于用户的协同过滤
May 31 Python
Python实现聊天机器人的示例代码
Jul 09 Python
Python函数和模块的使用总结
May 20 Python
python文件选择对话框的操作方法
Jun 27 Python
详解Django定时任务模块设计与实践
Jul 24 Python
使用Python实现正态分布、正态分布采样
Nov 20 Python
实例详解Python的进程,线程和协程
Mar 13 Python
keras做CNN的训练误差loss的下降操作
Jun 22 #Python
keras 自定义loss model.add_loss的使用详解
Jun 22 #Python
Python项目跨域问题解决方案
Jun 22 #Python
python os模块在系统管理中的应用
Jun 22 #Python
解决tensorflow读取本地MNITS_data失败的原因
Jun 22 #Python
python实现猜数游戏(保存游戏记录)
Jun 22 #Python
基于Tensorflow读取MNIST数据集时网络超时的解决方式
Jun 22 #Python
You might like
php基础知识:控制结构
2006/12/13 PHP
php网页后退不再出现过期
2007/03/08 PHP
ExtJs GridPanel简单的增删改实现代码
2010/08/26 Javascript
js setTimeout 常见问题小结
2013/08/13 Javascript
在javascript中执行任意html代码的方法示例解读
2013/12/25 Javascript
JavaScript代码实现禁止右键、禁选择、禁粘贴、禁shift、禁ctrl、禁alt
2015/11/17 Javascript
jQuery+css实现的换页标签栏效果
2016/01/27 Javascript
JavaScript中函数声明与函数表达式的区别详解
2016/08/18 Javascript
js获取页面引用的css样式表中的属性值方法(推荐)
2016/08/19 Javascript
jQuery插入节点和移动节点用法示例(insertAfter、insertBefore方法)
2016/09/08 Javascript
Bootstrap导航条的使用和理解3
2016/12/14 Javascript
浅谈js中startsWith 函数不能在任何浏览器兼容的问题
2017/03/01 Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
2017/10/11 Javascript
Vue computed 计算属性代码实例
2020/04/22 Javascript
python数组复制拷贝的实现方法
2015/06/09 Python
详解Python编程中包的概念与管理
2015/10/16 Python
在Python中定义和使用抽象类的方法
2016/06/30 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
python 删除列表里所有空格项的方法总结
2018/04/18 Python
python爬取个性签名的方法
2018/06/17 Python
提升python处理速度原理及方法实例
2019/12/25 Python
python中 _、__、__xx__()区别及使用场景
2020/06/30 Python
浅析Python 抽象工厂模式的优缺点
2020/07/13 Python
Python3.9新特性详解
2020/10/10 Python
考博自荐信
2013/10/25 职场文书
文秘专业个人求职信
2013/12/22 职场文书
十佳中学生事迹材料
2014/06/02 职场文书
优秀纪检干部材料
2014/08/27 职场文书
我的中国梦主题教育活动总结
2015/05/07 职场文书
老干部局2015年度工作总结
2015/10/22 职场文书
Nginx开启Brotli压缩算法实现过程详解
2021/03/31 Servers
Python基础之Socket通信原理
2021/04/22 Python
Django cookie和session的应用场景及如何使用
2021/04/29 Python
html form表单基础入门案例讲解
2021/07/21 HTML / CSS
python入门学习关于for else的特殊特性讲解
2021/11/20 Python
Debian11 Xfce终端光标的颜色怎么设置?
2022/08/14 数码科技