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

标签:django,kindeditor
0
投稿

猜你喜欢

  • Python利用matplotlib绘制约数个数统计图示例

    2023-11-12 16:00:43
  • 简单的网站页面有什么好处

    2007-11-15 06:28:00
  • Python通过正则库爬取淘宝商品信息代码实例

    2021-12-09 18:49:55
  • 视觉对交互的帮助——提升可用性

    2008-10-16 13:16:00
  • 巧用Dreamweaver MX设计导航栏特效

    2009-07-10 13:17:00
  • 从外到内提高SQL Server数据库性能

    2009-01-22 14:12:00
  • javascript结合canvas实现图片旋转效果

    2023-08-07 23:47:59
  • MYSQL教程:服务器优化和硬件优化

    2009-02-27 15:43:00
  • 基于.net开发的遵循web标准的个人站点程序包下载

    2023-07-21 12:37:57
  • Python识别二维码的两种方法详解

    2022-08-20 23:44:12
  • js与jquery获取父元素,删除子元素的两种不同方法

    2023-10-07 04:08:00
  • 删除数据库中重复数据的两个方法

    2008-01-01 19:16:00
  • 重温Javascript继承机制

    2011-07-04 12:17:23
  • Python实现繁體转为简体的方法示例

    2022-08-10 01:49:58
  • iframe高度自适应,兼容IE,FF

    2008-06-18 12:15:00
  • Python中删除文件的几种方法实例

    2021-02-02 05:57:13
  • 实例演示在SQL中启用全文检索

    2011-10-01 14:01:37
  • 如何创建 Firefox 的 Jetpack 扩展

    2009-10-13 20:55:00
  • Oracle 插入超4000字节的CLOB字段的处理方法

    2009-07-12 18:52:00
  • 互联网产品设计师自我介绍

    2009-04-16 12:45:00
  • asp之家 网络编程 m.aspxhome.com