Django CMS在cms之外使用2个PlaceholderFields

时间:2014-07-31 05:59:56

标签: python django django-cms

我想在我的自定义模型中添加2个PlaceholderFields(我正在使用DjangoCMS 3.0.3)。

这是我的models.py

class Entry(models.Model):
    # other fields here
    preview = PlaceholderField('preview', related_name='entry_preview_set')
    content = PlaceholderField('content')

这是我的模板:

{% extends 'blog/base.html' %}
{% load cms_tags %}

{% block content %}
    <div class="page-header">
        <h1>{{ entry.name }}</h1>
    </div>
    {% render_placeholder entry.preview %}
    {% render_placeholder entry.content %}
{% endblock %}

在forntend中,我只能编辑entry.content占位符,但不会呈现entry.preview。 我做错了吗?

1 个答案:

答案 0 :(得分:0)

http://docs.django-cms.org/en/3.0.1/extending_cms/placeholders.html

中的文档中描述了这种情况
  

如果您将PlaceholderField添加到现有模型,则只有在保存每个实例后才能在前端编辑器上看到占位符。

我需要在使用新添加的占位符之前保存每个模型实例。