1、在Django中使用富文本首先需要安裝插件,這里我們選擇tinymce插件
pip install django-tinymce
2、然后在setting里面注冊
INSTALLED_APP = [ 'tinymce', ] TINYMCE_DEFAULT_CONFIG = { 'theme': 'advanced', 'width': 800, 'height': 600, }
3、在HTML頁面使用,創建模型類, 也可在admin后台使用
# 創建模型類 from tinymce.models import HTMLField class Blog(models.Model): sBlog = HTMLField() # 配置站點 admin.site.register
4、建立url鏈接, 將tinymce渲染到HTML頁面中去
# 先在模板里面加載static {% load static%} # 在<head>標簽里面加載js <script type="text/javascript" src="/static/tiny_mce.js"></script> <script type="text/javascript"> tinyMCE.init({ 'mode': 'textareas', 'theme': 'advanced', 'width': 800, 'height': 600, }) </script> # mode 綁定的控件 theme 綁定的主題
頁面中用form表單提交
<form action="{% url 'app:edit_blog' %}" method="post"> {% csrf_token %} <textarea name="content"> </textarea> <button>保存</button> </form>
在views.edit_blog中 如果是get請求,則調用這個頁面
如果是post過來的保存請求, 就存入數據庫
elif request.method == 'POST': content = request.POST.get("content") blog = Blog() blog.b_content = content blog.save() return HttpResponse("保存博客成功")