Jinja2 if 语句中多个 if not + OR 的正确语法
Correct syntax for multiple if not + OR in Jinja2 if statement
如果我的 asnitem.asn 不是我给的值,我想做 X。
我认为可行的方法:
{%- if not asnitem.asn == 45102 or if not asnitem.asn == 24429 or if not asnitem.asn == 132203 %}
但这只是给我一个语法错误。
所以我也尝试了:
{%- (if not asnitem.asn == 45102) or (if not asnitem.asn == 24429) or (if not asnitem.asn == 132203) %}
但这也行不通。所以我目前很困惑如何在 Jinja2 if 语句中执行 multiple or's。感谢所有给出答案的人。
另外,如果有更好的方法来做这样的事情,请告诉我。也许是这样的?:
{%- if not asnitem.asn == 45102 || 24429 || 132203 %}
在这种情况下,in
逻辑运算符应该可以帮助您。试试这个示例:
{%- if not asnitem.asn in [45102, 24429, 132203] %}
in
运算符检查 left-hand 值 (asnitem.asn
) 在 right-hand[=22] 中是否存在=]列表([45102, 24429, 132203]
)。 not
反转检查结果。
如果我的 asnitem.asn 不是我给的值,我想做 X。
我认为可行的方法:
{%- if not asnitem.asn == 45102 or if not asnitem.asn == 24429 or if not asnitem.asn == 132203 %}
但这只是给我一个语法错误。 所以我也尝试了:
{%- (if not asnitem.asn == 45102) or (if not asnitem.asn == 24429) or (if not asnitem.asn == 132203) %}
但这也行不通。所以我目前很困惑如何在 Jinja2 if 语句中执行 multiple or's。感谢所有给出答案的人。 另外,如果有更好的方法来做这样的事情,请告诉我。也许是这样的?:
{%- if not asnitem.asn == 45102 || 24429 || 132203 %}
在这种情况下,in
逻辑运算符应该可以帮助您。试试这个示例:
{%- if not asnitem.asn in [45102, 24429, 132203] %}
in
运算符检查 left-hand 值 (asnitem.asn
) 在 right-hand[=22] 中是否存在=]列表([45102, 24429, 132203]
)。 not
反转检查结果。