我试图在for循环中使用一个相对简单的if ifif语句,但它似乎抛出一个错误。这是我正在使用的语法
{% for ruleset in rulesets %}
<!-- some simple html / template tags come here -->
{% for rule in rules %}
{% if rule.0 = ruleset.0 and rule.2 = 1 %}
{{ rule.1 }}: {{ rule.3 }} out of {{ rule.4 }} points above {{ rule.5 }} sigma
{% elif rule.0 = ruleset.0 and rule.2 = 2 %}
{{ rule.1 }}: {{ rule.3 }} out of {{ rule.4 }} points below {{ rule.5 }} sigma
{% endif %}
{% endfor %}
{% endfor %}
还有一些我想要合并的规则,所以我不能只使用else标记。
我得到的错误是: TemplateSyntaxError:无效的块标记:&#39; elif&#39;,expect&#39; else&#39;或者&#39; endif&#39;
有关如何解决此问题的任何建议?我在某些时候也使用了嵌套的if子句,但是也遇到了类似的错误。
答案 0 :(得分:2)
elif
可能是您使用的是较旧版本的django。
请参阅我对=
符号的评论,该==
符号应该ifequal
按预期评估为True或False。或者,您可以使用{{1}}模板标记。
答案 1 :(得分:1)
版本1.4(Django 1.4 release notes)中的elif
语句已添加到Django中。
如果您使用较旧的Django版本,则必须升级到较新版本或使用嵌套的if / else语句。