无效的块标签:'render_placeholder'

Posted

技术标签:

【中文标题】无效的块标签:\'render_placeholder\'【英文标题】:Invalid block tag: 'render_placeholder'无效的块标签:'render_placeholder' 【发布时间】:2013-10-08 09:46:53 【问题描述】:

我正在尝试在我的模板中呈现一个占位符,我已将其放入自定义 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',预期为'empty'或'endfor'”。

我错过了什么愚蠢的东西吗?

提前致谢。

【问题讨论】:

【参考方案1】:
% load placeholder_tags %

将其放入调用占位符的模板中。

我还需要查看您的项目文件夹结构,以确保可以访问该标记的来源。它应该在一个应用程序中,文件夹名为:

<app_name>/templatetags
<app_name>/models.py

【讨论】:

非常感谢。我认为“% load placeholder_tags %”属于“base.html”,将其移动到扩展“base.html”的另一个模板就可以了。

以上是关于无效的块标签:'render_placeholder'的主要内容,如果未能解决你的问题,请参考以下文章

无效的块标记。您是不是忘记注册或加载此标签?

Django:无效的块标签'form.username'

Django 无效的块标签:'endfor',预期的'endblock'

第 1 行的块标记无效:“设置”。您是不是忘记注册或加载此标签

Django:无效的块标签:'static',预期的'endif'

Google App Engine Python django TemplateSyntaxError:无效的块标签:'endif'