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

时间:2015-07-29 22:05:19

标签: django django-cms djangocms-text-ckeditor

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

根据documentation,我正在扩展Model和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')

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

   / en / admin / cms / page / edit-plugin / 58 /的

TypeError   getattr():属性名必须是字符串

完整的例外情况如下:https://gist.github.com/alsoicode/cae2c4cc0824c34ed208

我做错了什么?

1 个答案:

答案 0 :(得分:1)

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