1

错误是:无效的块标签:'endif'。

首先关于错误是什么 - 我将整个模板包装成条件:

{% if something %}
{% else %}
{% load cms_tags sekizai_tags menu_tags %}
{% render_block "css" %}
{% render_block "js" %}
{% endif %}

这会导致 django 抛出错误:

/mypage/ 处的 TemplateSyntaxError 无效块标签:“endif”

但问题显然在于classytags/sekizai

{% if something %}
{% else %}
<h1>Hello world</h1>
{% endif %}

呈现没有错误。

有谁知道我怎样才能避免这个错误或修复它?

现在第二部分 - 我想要实现的是 - 当请求是 ajax 请求时,我想显示一些不同的 HTML 页面。条件应该是 if request.is_ajax。但是,如果更改以更清楚地说明我的观点。我正在使用 django-cms,它允许您每页只设置一个模板。如果我可以在ajax请求的情况下提供相同的内容但使用不同的周围html,这将不是问题,但不幸的是渲染失败......

4

1 回答 1

1

好吧,在文档中很清楚,在另一个模板标签块中使用 {% render _block ... %} 是不允许的。

如果渲染块内的条件,你不能这样做吗?

编辑:刚刚注意到这个问题不是最近的。那好吧。好奇你最终是如何解决你的问题的......

于 2014-02-20T14:22:41.647 回答