djangocms-text-ckeditor 使用自定义配置抛出异常

Posted

技术标签:

【中文标题】djangocms-text-ckeditor 使用自定义配置抛出异常【英文标题】:djangocms-text-ckeditor throwing exception with custom configuration 【发布时间】:2015-10-21 02:47:44 【问题描述】:

我正在尝试提供自定义 djangocms-text-ckeditor 配置,以减少 Django-CMS 3.0.13 项目中富文本插件中可用选项的数量。

根据documentation,我正在扩展模型和CMSPlugin:

# models.py

class WysiwygText(AbstractText):

    def __unicode__(self):
        return truncatechars(truncatewords_html(self.content, 10), 20)

    @property
    def name(self):
        return self

# cms_plugins.py

WYSIWYG_CKEDITOR_CONFIGURATION = 
    'language': 'en',
    'toolbar_CMS': [
        ['cmsplugins', '-', 'Bold', 'Italic', 'BulletedList'],
        ['Undo', 'Redo'],
    ],
    'skin': 'moono',
    'toolbarCanCollapse': False,


class WysiwygPlugin(TextPlugin):
    admin_preview = False
    ckeditor_configuration = WYSIWYG_CKEDITOR_CONFIGURATION
    model = WysiwygText
    name = _('WYSIWYG Text')

当我尝试编辑这个插件时,我得到:

TypeError 在 /en/admin/cms/page/edit-plugin/58/ getattr(): 属性名必须是字符串

完整的例外在这里:https://gist.github.com/alsoicode/cae2c4cc0824c34ed208

我做错了什么?

【问题讨论】:

感谢 downvoter,提醒我,当您在 Stack Overflow 上累得要死时,没有地方可以犯愚蠢的错误。 【参考方案1】:

ckeditor_confugration 应该是一个字符串。在你的情况下'WYSIWYG_CKEDITOR_CONFIGURATION'。此外,该配置必须在您的 Django 设置中,而不是插件中。

【讨论】:

如果您将配置放入一个在插件模块之前自动加载的模块中,它也真的会有所帮助,例如 settings.py :)

以上是关于djangocms-text-ckeditor 使用自定义配置抛出异常的主要内容,如果未能解决你的问题,请参考以下文章

第一信使即细胞外信号,胞内信号为第二信使。

“第二信使”都有哪些?与它作用的物质都有哪些?

使引导容器大小变大会使页面无响应

Css使Div自适应居中

如何用word使图片上下居中

如何使 RelativeLayout 半透明但不使活动