You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

djangocms-text升级后所有配置失效,自定义样式及核心设置不生效求助

djangocms-text升级后所有配置失效,自定义样式及核心设置不生效求助

各位大佬好,我现在在维护一个老项目,用到了Django、djangoCMS,之前依赖的djangocms-text-ckeditor已经停更,不支持新版的Django和djangoCMS,所以我换成了官方推荐的替代包djangocms-text,并按文档完成了基础迁移。

原本项目里有大量自定义的CKEditor样式和CSS,一开始djangocms-text的基础功能能正常运行,但在配置自定义样式时遇到了大问题:不管怎么修改配置,所有设置都完全不生效——哪怕是之前试过有效的TEXT_INLINE_EDITING = False这种核心设置,现在也没有任何反应。

我试过的两种配置方案

方案1:使用默认的Tiptap编辑器

按照djangocms-text的文档配置了Tiptap,添加了自定义样式和本地CSS,但样式下拉框完全没变化,所有配置都未生效:

TEXT_INLINE_EDITING = False
from djangocms_text.contrib.text_tinymce import RTEConfig

DEFAULT_EDITOR = RTEConfig(
    name='tiptap',
    config="TIPTAP",
    js=("djangocms_text/bundles/bundle.tiptap.min.js",),
    css={"all": (
        "djangocms_text/css/bundle.tiptap.min.css",
        '/static/css/custom/v1/content.css',
    )},
    admin_css=(
        "djangocms_text/css/tiptap.admin.css",
        '/static/css/custom/v1/content.css',
    ),
    inline_editing=False,
    child_plugin_support=True,
    configuration={}
)

# 也试过把配置放到configuration参数里
DEFAULT_EDITOR.configuration = {
    "inlineStyles": [
        # 默认样式
        {'name': 'Small', 'element': 'small'},
        {'name': 'Kbdddd', 'element': 'kbd'},
        {'name': 'Var', 'element': 'var'},
        {'name': 'Samp', 'element': 'samp'},
        # 自定义样式
        {'name': 'White', 'element': 'span', 'attributes': {'class': 'custom--text-col-white'}},
        {'name': 'Main color', 'element': 'span', 'attributes': {'class': 'custom--text-col-color-main'}},
    ],
}

方案2:切换到CKEditor4(兼容老配置)

根据djangocms-text文档说明,它支持旧的CKEDITOR_SETTINGS做向后兼容,我直接用了原项目中能正常工作的配置,虽然编辑器确实切换成了CKEditor4,但自定义样式、皮肤这些设置完全没生效:

TEXT_EDITOR = "djangocms_text.contrib.text_ckeditor4.ckeditor4"
CKEDITOR_SETTINGS = {
    'skin': 'moono-lisa',
    'stylesSet': 'default:/static/js/addons/custom_ckeditor_config_and_styles.js',
    'contentsCss': [
        '/static/djangocms_bootstrap4/css/ckeditor_default_font.css',
        '/static/css/custom/v1/content.css',
    ],
}

调试发现的奇怪线索

我直接查看了djangocms-text的源码,添加打印语句测试变量后发现:

  • 它的editor.py文件能正常读取到我在项目settings.py里设置的TEXT_EDITOR变量;
  • 但它的settings.py文件却完全读不到我在项目配置里添加的任何自定义变量,包括自定义样式、TEXT_INLINE_EDITING等。

我已经确认djangocms-text是放在项目自有APP之后才加到INSTALLED_APPS中的,按道理项目配置应该覆盖包的默认配置,但现在出现了部分文件能读取配置、部分读不到的情况,实在摸不着头绪。

有没有大佬遇到过类似的情况?或者能给点调试的方向?感激不尽!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 09:23:03