我尝试提供自定义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
我做错了什么?
答案 0 :(得分:1)
ckeditor_confugration
应该是一个字符串。在您的情况下'WYSIWYG_CKEDITOR_CONFIGURATION'
。此配置必须在您的Django设置中,而不是插件。