两种方法:
貌似有两种方法,第一种方法是广大网友提供的,个人不喜欢这种方法,这里要利用npm,我懒得下载就只能着手研究第二种利用内置功能包来实现在CKEDITOR5在django上运行。
这两种方法官网其实都给了,但无论是国内国外的开发者平台都倾向于第一种方法,就算是谷歌给出的也只有两三个相关的答案,能够作为clue,但都不起作用,因为第二种方法的话,官方没给出完整答案,导致开发者很难模仿。
官网给出的解释是ck5的操作跟ck4的基本一致,只需要在setting.py配置下然后再App文件里修改项,比用npm的方法简易得多,但是第二种方法的文档位置真的不好找,所以没有探险精神和耐心的开发者可能就找不到了。
方法一:
https://github.com/n37r06u3/django-ckeditor5
方法二:
直接用pip内置ckeditor 5
安装:pip install django-ckeditor-5
若觉得不保险则更新:pip install django-ckeditor5 -U
拿文章article来举例,可以根据官网给的例子和提示修改
在setting.py配置ckeditor-5
注:u官网给的提示中涉及url和root的修改,如果本身就设置好就都不用管
然后配置INSTALLED_APPS添加django_ckeditor_5这一项
然后修改你的项目根目录下的url.py
settings.DEBUG加不加都不会影响功能实现,但建议加,养成会debug的习惯,万一未来用到呢
修改article/forms.py
修改models.py中负责展示Article的函数:修改body
view.py检查一下create函数里边的表单类实例有没有错误
create.html里的textfield标签换成media和body
最终效果:这里是假设ck5文本框在页面中实现自适应,这个在另一个帖子有提到解决方案
后台标签元素展示:
全程跟npm完全不沾边,将ck5完美嵌入django