gpt4 book ai didi

python - Django 模板(App Engine)- None 和 False 之间的区别

转载 作者:行者123 更新时间:2023-12-01 06:03:19 26 4
gpt4 key购买 nike

我在 Google App Engine 上有一个 Django 模板:

{% if not d.deposited}
{{ variable }}
{% else %}
{{ other_variable }}
{% endif %}

存入的变量可以是 True、False 或 None。我试图确定该值是否是这三个值之一,但据我所知, False 和 None 被视为同一件事(意味着 if 的第一部分被触发两次)。有什么办法可以解决这个问题吗?

最佳答案

在 Python 中, is in fact an object ,表示缺少值。要在 Django 1.2 或更高版本中专门检查它,请检查 deposited 本身是否为 None

{% if d.deposited is None %}
{{ none_variable }}
{% elif not d.deposited %}
{{ false_variable }}
{% else %}
{{ other_variable }}
{% endif %}

不幸的是,在 1.2 之前,if 标记的功能不是很强大,但您可以使用 ifequalifnotequal

{% ifequal d.deposited None %}

此外,如果有兴趣,请参阅 the difference between is None and == None 上的这篇文章.

关于python - Django 模板(App Engine)- None 和 False 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9217816/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com