后台实现富⽂本编辑器
试了好⼏个富⽂本编辑器⽼是不成功,这个终于成功了,就写下来记录下。
因为这个是经过django封装的,所以配置简单。
第⼀步是下载,好像pip可以安装pip install django-ckeditor
有可能你的环境中没有pillow,它是⼀个图像处理库,django-ckeditor依赖于它
第⼀步:将ckeditor增加到INATALLED_APPS中
INSTALLED_APPS = (    'ib.admin',    'ib.auth',    'ttypes',    'ib.sessions',    'ssages',    'ib.staticfiles',    'ckeditor',    'article',
)
第⼆步,增加CKEDITOR UPLOAD PATH配置项
MEDIA_URL = "/media/"MEDIA_ROOT = os.path.join(BASE_DIR, "media")CKEDITOR_UPLOAD_PAT
H = "article_p_w_picpaths"
然后在django应⽤中为ckeditor设置url:
url(r'^ckeditor/', include('ckeditor_uploader.urls')),#按照官⽹的设置就失败,这样才成功
这个就可以有⼀个简单的富⽂本编辑器了。
当然简单到不像话,所以我们也可以对这个编辑器进⾏配置
在setting⽂件中加⼊如下配置
CKEDITOR_CONFIGS = {    'default': {        'toolbar': (
asp富文本编辑器['div','Source','-','Save','NewPage','Preview','-','Templates'],
['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print','SpellChecker','Scayt'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['Form','Checkbox','Radio','TextField','Textarea','Select','Button', 'ImageButton','HiddenField'],
['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
['Link','Unlink','Anchor'],
['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
['Styles','Format','Font','FontSize'],
['TextColor','BGColor'],
['Maximize','ShowBlocks','-','About', 'pbckcode'],
),
}
}
当然以上都只是环境的配置,现在我们说说怎么使⽤哈
django-ckeditor提供了两个类:RichTextField和CKEditorWidget,分别⽤于模型和表单。内容型⽹站通常在后台会有⼀个⽂章发布和编辑的界⾯,如果你想让该界⾯拥有⼀个富⽂本编辑器,只需按如下⽅式定义你的django模型:
from django.db import modelsfrom ckeditor.fields import RichTextFieldclass Article(models.Model):
content = RichTextField('正⽂')
当然为了在后台显⽰我们的成果。我们得先把Article注册到后台。在admin.py中:
ib import adminfrom models import Article
ister(Article)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。