无效的块标记:'render_placeholder'

时间:2013-10-02 03:43:49

标签: python django django-templates django-cms

我正在尝试在我的模板中渲染一个占位符,我已将其放入自定义CMS插件中。问题是它告诉我'render_placeholder'标签是一个无效的块标签。

这是带有'render_placeholder'标签的模板。

{% extends 'base.html' %}

{% block base_content %}

<h2>Posts</h2>
{% if posts %}
    {% for post in posts %}
    <div class="entry-list">
        {{ post.posted|date:"M d" }}
        <h3><a href="{{ post.get_absolute_url }}">{{ post.title }}</a></h3>
            {% render_placeholder post.body %}
        <a href="{{ post.get_absolute_url }}">Read More</a>
        </div>
    {% endfor %}
{% else %}
    <p>There are no posts.</p>
{% endif %}

{% endblock %}

以下是显示“{%load placeholder_tags%}”的基本模板。

{% load placeholder_tags cms_tags sekizai_tags static menu_tags %}
<html>
<head>
    {% render_block "css" %}
    <link href="{{ STATIC_URL }}css/styles.css" rel="stylesheet">
</head>
<body>
  {% show_menu 0 100 100 100 %}
  {% cms_toolbar %}
  {% placeholder base_content %}
  {% block base_content %}{% endblock %}
  {% render_block "js" %}
</body>
</html>

它一直告诉我“无效的块标记:'render_placeholder',预期'空'或'endfor'”。

我错过了一些愚蠢的东西吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

{% load placeholder_tags %}

将它放在调用占位符的模板中。

我还需要查看您的项目文件夹结构,以确保可以访问该标记的来源。它应该位于名为:

的文件夹的应用程序中
<app_name>/templatetags
<app_name>/models.py