博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django-ckeditor 使用
阅读量:7172 次
发布时间:2019-06-29

本文共 1997 字,大约阅读时间需要 6 分钟。

hot3.png

     昨天在完成微信项目,想通过微信公众号发布通知。然而把通知粘贴到adminsite中后发现所有html标签都被转译了,一堆文字落在一起甚是难看。于是不得不好好使用富文本编辑器。

一、源

pip install django-ckeditor-updatedhttps://github.com/django-ckeditor/django-ckeditor

二、配置方式

    其实照着demo做就可以了,不过有几点需要注意的

(1)urls.py中不要忘记配置media路径

from django.conf.urls import patterns, include, urlfrom django.contrib import adminfrom django.conf import settingsfrom django.conf.urls.static import staticurlpatterns = patterns('',    # Examples:    # url(r'^$', 'rickck.views.home', name='home'),    # url(r'^blog/', include('blog.urls')),    url(r'^ckeditor/', include('ckeditor.urls')),    url(r'^admin/', include(admin.site.urls)),)+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

(2) settings.py中需要配置一个相应的路径

from unipath import PathPROJECT_DIR = Path(__file__).parent.parent#STATIC_ROOT = PROJECT_DIR.child('static')STATIC_URL = '/static/'MEDIA_URL = '/media/'#STATIC_ROOT = os.path.join(BASE_DIR, 'ck_static')#MEDIA_ROOT = os.path.join(BASE_DIR, 'ck_media')STATIC_ROOT = PROJECT_DIR.child('ck_static')MEDIA_ROOT = PROJECT_DIR.child('ck_media')CKEDITOR_UPLOAD_PATH = "uploads/"CKEDITOR_IMAGE_BACKEND = "pillow"CKEDITOR_JQUERY_URL = 'js/jquery.js'STATICFILES_DIRS = (    PROJECT_DIR.child('static'),)

注意:demo中配置的路径是 tmp目录,我把相应路径指到了项目里面

(3)静态文件收集

如果项目把所有多静态文件都整理到项目中,那么运行下列命令

python  manage.py collectstatic

三、使用

(1)models中定义model,不得不说django-ckeditor的确很好用,直接使用RichTextField就ok了

from django.db import modelsfrom ckeditor.fields import RichTextFieldclass ExampleModel(models.Model):    content = RichTextField()

(2)如果需要通过adminsite管理model,可以定义admin.py

from . import modelsfrom django.contrib import adminadmin.site.register(models.ExampleModel)

(3)form也支持呦,有些朋友肯定还要通过前端编辑文本,使用django-ckeditor也非常容易

from django import formsfrom ckeditor.fields import RichTextFormFieldclass CkEditorForm(forms.Form):    content = RichTextFormField()

四、有图有真相

    截个图,看文档应该还有很多的自定义配置。有时间在继续研究吧

092707_FYGi_124246.png

转载于:https://my.oschina.net/springRan/blog/359433

你可能感兴趣的文章
我们的移动混合开发之旅
查看>>
架构如何为业务和技术“服务”(2)
查看>>
Cool!!将图片转换为HTML图片
查看>>
CNN中的局部连接(Sparse Connectivity)和权值共享
查看>>
jquery-galleryview-2.0 漂亮多样化的图片特效(多项自定义)
查看>>
项目管理系列之质量管理(四)
查看>>
EBS - Low-level Diagnostic Logging is turned on
查看>>
[Sharepoint2007对象模型]第二回:Web应用程序服务(SPWebService)
查看>>
嵌入式linux系统中,lsusb出现unable to initialize libusb: -99 解决办法 【转】
查看>>
WinHEC上好玩的东西
查看>>
.NET Compact Framework 多线程环境下的UI异步刷新
查看>>
招聘:高级lamp的工程师、高级.net的软件工程师
查看>>
在两个有序的数组中找第N个数,二分查找 O(lgm+lgn)级
查看>>
AIO 简介
查看>>
如何查看oracle用户权限
查看>>
Android的init过程(二):初始化语言(init.rc)解析
查看>>
如何优雅地实现Python通用多线程/进程并行模块
查看>>
使用wiz(为知)发布网易博客实践
查看>>
完美仿MSN右下角弹出广告代码并可自动消失,附带关闭按钮
查看>>
Bucket不为空,请检查该Bucket是否包含未删除的Object或者未成功的Multipart碎片
查看>>