gpt4 book ai didi

django模板if条件

转载 作者:行者123 更新时间:2023-12-01 22:07:21 24 4
gpt4 key购买 nike

这里有一个问题。

我有以下内容

{% if form.tpl.yes_no_required == True  %}
<!-- path 1 -->
{% else %}
{% if form.tpl.yes_no_required == False %}

<!-- path 2 -->
{% endif %}
{% endif %}

form.tpl.yes_no_required 的值为 None,但我被路由到路径 2。任何人都可以解释为什么会这样吗?编辑:如果该值为 none,我不希望它显示任何内容。

最佳答案

您不能使用模板语言来测试您认为的常量,解析器实际上正在测试 2 个“文字”。

解析器测试名称为“None”和“False”的 2 个文字。当解析器尝试在上下文中解析这些对象时,会抛出 VariableDoesNotExist 异常,并且两个对象都解析为 python 值 None并且无 == 无。

from django.template import Context, Template
t = Template("{% if None == False %} not what you think {% endif %}")
c = Context({"foo": foo() })

打印出“不是你所想的”

c = Context({'None':None})
t.render(c)

打印出“不是你所想的”

c = Context({'None':None, 'False':False})
t.render(c)

打印你''

关于django模板if条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5667878/

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