Django添加KindEditor富文本编辑器的使用
作者:JueYings 发布时间:2022-01-06 07:41:17
KindEditor简介:
KindEditor是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。
KindEditor使用JavaScript编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。
在Django Admin当中加入KindEditor,这比干巴巴的textarea好多了。加入之后的效果如下:
1、设置static文件路径
KindEditor是用JavaScript编写的,这属于static files,因此需要为Django设置static路径。
首先在工程目录下新建static文件夹,这里要注意的是千万不要在my_app/下创建static文件夹作为static文件存放的目录, 这会导致Django无法搜索到自己的static 文件。
创建后好,在settings中配置static文件目录。添加以下代码
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
2、下载KindEditor
下载KindEditor, 解压后将那些没用的asp, asp.NET, php, jsp, examples文件该删掉后拷贝到static目录下,由于KindEditor是js文件有事编辑器,所以就设置了js/editor目录,并将KindEditor代码拷贝到该目录下。
就像这样子static/js/editor/kindeditor-4.1.7
3、在admin后台管理当中的html页面加入JavaScript代码
在kindeditor-4.1.7目录下新建config.js文件,内容如下:
KindEditor.ready(function(K) {
window.editor = K.create('#id_content',{
// 指定大小
width:'800px',
height:'200px',
});
});
4、在admin.py中的的管理类中添加class Media,引入js文件
这里是一个完整的admin.py示例
备注:class 一定要在admin.site.register前面,不然程序会报错,显示没有define
from django.contrib import admin
from .models import category,tags,article
# Register your models here.
class articleAdmin(admin.ModelAdmin):
list_display = ('id','title','create_time','change_time','type') #添加字段显示
search_fields = ('title') #添加快速查询栏
class Media:
# 在管理后台的HTML文件中加入js文件, 每一个路径都会追加STATIC_URL/
js = (
'/static/js/editor/kindeditor-4.1.7/kindeditor-all.js',
'/static/js/editor/kindeditor-4.1.7/lang/zh_CN.js',
'/static/js/editor/kindeditor-4.1.7/config.js',
)
admin.site.register(category)
admin.site.register(tags)
admin.site.register(article,articleAdmin)
来源:https://blog.csdn.net/jueyings/article/details/70332429


猜你喜欢
- 自从2005年8月11日阿里巴巴宣布收购雅虎中国的全部资产后,做为阿里巴巴集团的创始人马云心里盘算的事应该是如何把雅虎中虎整合进阿里巴巴这个
- 一、使用 reflect.Type 创建实例在通过 reflect.TypeOf 函数获取到变量的反射类型对象之后,可以通过反射类型对象 r
- 线程是进程中可以调度执行的实体。而且,它是操作系统中可以执行的最小处理单元。简单地说,一个线程就是一个程序中可以独立于其他代码执行的指令序列
- 理论傅立叶变换用于分析各种滤波器的频率特性,对于图像,2D离散傅里叶变换(DFT)用于找到频域.快速傅里叶变换(FFT)的快速算法用于计算D
- 本文实例讲述了pymongo为mongodb数据库添加索引的方法。分享给大家供大家参考。具体实现方法如下:from pymongo impo
- select for update 这个是行级锁 当 commit或者rollback时,锁释放 记得打开事务,比如jdbc里面 setAu
- 一、现象最近在数据库中删除了一张表,重新执行python manage.py migrate时出错,提示不存在这张表。通过查找相关的资料,最
- 一、条件分支语句:if基本格式:if (<表达式1>){ <语句组1>}else
- @Test public void test33() {
- 前言学会向程序中添加必要的注释,也是很重要的。注释不仅可以用来解释程序某些部分的作用和功能(用自然语言描述代码的功能),在必要时,还可以将代
- reflect 反射包针对反射,Go 提供了 reflect 包,使用这个包里的函数可以在程序运行时获取和更新未知变量的值,操作未知变量的方
- 代码为:import matplotlib.pyplot as plt #用于显示图片import matplotlib.image as
- 使用setStyleSheet方法修改得到自己想要的字体,大小,颜色self.lab = QLabel("标签字体大小颜色&quo
- 一、卷积神经网络卷积神经网络(ConvolutionalNeuralNetwork,CNN)最初是为解决图像识别等问题设计的,CNN现在的应
- 生产图片区域,上传按钮#btn可替换自己想要的图片<ul id="ul_pics" class="ul_
- 今天在看见了一堆不错的非洲的web 2.0网站的Logo,于大家一起欣赏:非洲web2.0网站的logo大部分和平时看见的web2.0网站l
- 本主题说明如何创建支持 FILESTREAM 的数据库。由于 FILESTREAM 使用一种特殊类型的文件组,因此,在创建数据库时,必须至少
- 首先得抛出个重要的前提观点,大屏幕、宽屏幕根本不是为方便“扫视”准备的。所以说以内容为基础的网站设计不用考虑超宽、超大的场景,甚至包括服务类
- 出图是项目里常见的任务,有的项目甚至会要上百张图片,所以批量出土工具很有必要。arcpy.mapping就是ArcGIS里的出图模块,能快速
- 本文实例讲述了python静态方法。分享给大家供大家参考。具体实现方法如下:staticmethod Found at: __builtin