Django管理后台无法加载ckeditor富文本编辑器问题及解决方案
Django管理后台ckeditor富文本编辑器无法加载问题解决方案
问题表现
在Django项目中集成ckeditor后,管理后台对应富文本字段位置仅显示空白,无编辑器控件渲染,甚至没有基础文本输入框展示。
问题相关配置
settings.py 配置内容
INSTALLED_APPS = [ 'search.apps.SearchConfig', 'user.apps.UserConfig', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'django_node_assets', 'ckeditor', 'ckeditor_uploader', ] CKEDITOR_BASEPATH = "./search/static/ckeditor/ckeditor/" CKEDITOR_UPLOAD_PATH = "/media/"
models.py 配置内容
from ckeditor.fields import RichTextField from ckeditor_uploader.fields import RichTextUploadingField class Content(models.Model): heading = models.ForeignKey(SubTopics, on_delete=models.CASCADE) content = RichTextField() def __str__(self): return self.heading.heading
解决方案
删除settings.py中手动配置的CKEDITOR_BASEPATH项即可恢复正常加载。
原理说明:django-ckeditor默认会自动匹配静态资源路径,手动填写的相对路径会导致编辑器找不到对应的静态资源文件,因此无法正常渲染控件。
内容的提问来源于stack exchange,提问作者Meet Gondaliya
相关产品推荐
相关产品推荐

