在运营后台,运营⼈员需要录⼊商品并编辑商品的详情信息,⽽商品的详情信息不是普通的⽂本,
可以是包含了HTML语法格式的字符串。为了快速简单的让⽤户能够在⻚⾯中编辑带格式的⽂本,我们引⼊富⽂本编辑器。富⽂本即具备丰富样式格式的⽂本。
我们使⽤功能强⼤的CKEditor富⽂本编辑器。
1. 安装
pip install django-ckeditor
2. 添加应⽤
在INSTALLED_APPS中添加 INSTALLED_APPS = [ ... 'ckeditor', # 富⽂本编辑器 'ckeditor_uploader', # 富⽂本编辑器上传图⽚模块 ... ]
3. 添加CKEditor设置
在settings/dev.py中添加
CKEDITOR_CONFIGS = { 'default': { 'toolbar': 'full', # ⼯具条功能 'height': 300, # 编辑器⾼度 # 'width': 300, # 编辑器宽 }, } CKEDITOR_UPLOAD_PATH = ''
4. 添加ckeditor路由
在总路由中添加
url(r'^ckeditor/', include('ckeditor_uploader.urls')),
5. 为模型类添加字段
ckeditor提供了两种类型的Django模型类字段
• ckeditor.fields.RichTextField 不⽀持上传⽂件的富⽂本字段
• ckeditor_uploader.fields.RichTextUploadingField ⽀持上传⽂件的富⽂本字段
用法:
desc_detail = RichTextUploadingField(default='', verbose_name='详细介绍') desc_pack = RichTextField(default='', verbose_name='包装信息')