初学django,目前我用django实现了一个很小的blog,但我想在admin后台编辑内容的区域加入插入图片并且预览的功能,不知道该如何实现。恳请大家在这里给我一点实现的思路,小弟感激不尽。
关键代码展示如下:
models.py class Post(models.Model): #some other fields title = models.CharField(max_length=70, default='') body = models.TextField(default='')#这里就是对应于后台编辑区域的fields
感谢楼下两位朋友的回答,对我很有帮助,部分的插件我也尝试用过。但是因为我目前处于学习django的阶段,因此不想使用任何的第三方包来实现我的需求,而且我也并不需要一个富文本编辑器,只需要一个上传图片的功能就行了。
推荐 https://github.com/pydanny/django-wysiwyg 插件,里面可以选择各种html编辑器比如:ckeditor, tinymce等。
具体步骤如下:
INSTALLED_APPS 添加 django_wysiwyg.
配置需要使用的编辑器类型 DJANGO_WYSIWYG_FLAVOR = "ckeditor" #这里使用的是ckeditor
修改模型对应的admin文件,讲模型的admin类的change_form_template设置成'fun/admin/change_form.html'
复制:cp django_wysiwyg/templates/my-app-name/admin/change_form.html pydanny/templates/fun/admin/change_form.html
修改change_form.html文件
{% extends "admin/change_form.html" %}
{% load wysiwyg %}
{% block extrahead %}
{% endblock %}
{% block content %}
{% endblock %}
把"id_description"改成你对应的模型需要使用editor的字段的名称就行了。
django-ckeditor
https://github.com/summernote/django-summernote
https://github.com/rosarior/awesome-django