我试图在jinja模板中写一个if语句
{% for key in data %}
{% if key is 'priority' %}
<p>('Priority: ' + str(data[key])</p>
{% endif %}
{% endfor %}
我试图在python中翻译的声明是
if key == priority:
print(print('Priority: ' + str(data[key]))
这是我得到的错误:
TemplateSyntaxError:期望令牌&#39;名称&#39;,得到&#39;字符串&#39;
答案 0 :(得分:27)
为什么要循环?
你可以这样做:
{% if 'priority' in data %}
<p>Priority: {{ data['priority'] }}</p>
{% endif %}
当您最初进行字符串比较时,您应该使用==
代替。
答案 1 :(得分:9)
我们需要记住,{% endif %}
位于{% else %}
之后。
所以这是一个例子:
{% if someTest %}
<p> Something is True </p>
{% else %}
<p> Something is False </p>
{% endif %}