DjangoCMS:如何在插件中创建占位符

时间:2014-07-03 01:07:37

标签: django django-cms

我正在创建一个名为InformationBox的插件。信息框包含标题,主体和页脚。页眉和页脚只是CharField s。最初我将身体作为CKEditor插件HTMLField,但是,我不能在HTMLField中使用djangocms-column插件(和其他人)。

目前我在models.py

class InformationBoxModel(CMSPlugin):
    header = models.CharField(_("header"), max_length=100)
    footer = models.TextField(_("footer"), default='', blank=True)
    text_field_placeholder = PlaceholderField('text_field_placeholder')

使用简单的模板:

{% load cms_tags %}

<section class="box padding">
    <h2>{{ box.header }}</h2>
    <div>{% render_placeholder box.text_field_placeholder %}</div>
    <div class="footer"><p>{{ box.footer }}</p></div>
</section>

我可以在Chrome元素检查器中看到实际上有text_field_placeholder div的占位符类,但是,我无法双击进行编辑。

我的问题:

  1. 为什么我无法点击编辑插件内的占位符?
  2. 这是我正在努力实现的正确方法吗?
  3. 是否有更好的方法来创建窗口小部件(帮助用户创建样式化的“框”等)?

1 个答案:

答案 0 :(得分:2)

如果您使用的是3.0+,则可以在插件中使用插件。所以你可以有一个盒子插件并放在文本或图片插件中。

http://django-cms.readthedocs.org/en/latest/extending_cms/custom_plugins.html#allow-children