我有一个需要在模板内更改的变量。
假设变量foo
是4
,但我需要的值是foo + 1
。
然后我将在if
声明中使用它,如下所示:
{% if bar == foo+1 %}
<p>Condition has been met!</p>
{% endif %}
我有一个需要在模板内更改的变量。
假设变量foo
是4
,但我需要的值是foo + 1
。
然后我将在if
声明中使用它,如下所示:
{% if bar == foo+1 %}
<p>Condition has been met!</p>
{% endif %}
你可以做
{% if bar == foo|add:1 %}
<p>Condition has been met!</p>
{% endif %}
或者另一个是:
{%with newfoo=foo|add:1 %}
{% if bar == newfoo %}
<p>Condition has been met!</p>
{% endif %}
{%endwith%}
如果您将逻辑保留在视图中而不是模板中,您的代码将更加透明和“djangoic”。因此,不要在模板中进行计算,而是foo+1
将一个名为 的布尔变量传递给模板foo_equals_bar
,或者传递给它变量bar
然后foo_incremented
比较它们。
看看它的可读性如何:
{% if foo_equals_bar %}
<p>Condition has been met!</p>
{% endif %}
{% with foo|add:"1" as foo1 %}
{% if foo1 == bar %}
<p>....</p>
{% endif %}
{% endwith %}