如何在Django Admin中实现富文本编辑器
要在Django Admin中实现富文本编辑器,可以使用第三方插件django-ckeditor。
以下是详细步骤:
- 安装django-ckeditor插件:
在命令行中运行以下命令进行安装:
pip install django-ckeditor
- 在Django项目的settings.py文件中添加以下配置:
INSTALLED_APPS = [ # ... 'ckeditor', # ... ] CKEDITOR_UPLOAD_PATH = 'uploads/' # 设置上传图片的路径 CKEDITOR_JQUERY_URL = 'https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js' # 设置jQuery的CDN地址 CKEDITOR_IMAGE_BACKEND = 'pillow' # 设置图片的后端处理方式
- 在Django项目的urls.py文件中添加以下配置:
from django.conf import settings from django.conf.urls.static import static urlpatterns = [ # ... ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
- 在需要使用富文本编辑器的Django模型中添加以下字段:
from django.db import models from ckeditor.fields import RichTextField class Article(models.Model): title = models.CharField(max_length=100) content = RichTextField()
- 在Django Admin中使用富文本编辑器:
在Django模型的Admin类中添加以下代码:
from django.contrib import admin from ckeditor.widgets import CKEditorWidget from .models import Article class ArticleAdmin(admin.ModelAdmin): formfield_overrides = { RichTextField: {'widget': CKEditorWidget} } admin.site.register(Article, ArticleAdmin)
以上步骤完成后,在Django Admin中添加或修改Article对象时,content字段将会使用富文本编辑器进行输入和编辑。
以下是代码演示:
假设我们要在Django Admin中添加一个名为“富文本编辑器示例”的Article对象,其中content内容为“pidancode.com”:
-
进入Django Admin的Article页面,点击“Add Article”按钮。
-
在Title字段中输入“富文本编辑器示例”,在Content字段中使用富文本编辑器输入“pidancode.com”。
-
点击“Save”按钮保存Article对象。
-
在Django Admin中查看Article对象详细信息,可以看到content字段已经使用富文本编辑器显示了“pidancode.com”字符串。
相关文章