【发布时间】:2014-03-23 13:14:46
【问题描述】:
我正在使用 Django 模板,我想检查布尔值,如果为真则打印“粗体”,如果为假,则打印“普通”。如果该值为空白或未定义,我想将其视为 True。这是我目前使用的:
{{ something.boolean_val|yesno:"bold,plain,bold" }}
但是,当 something.boolean 未定义时,它会将其视为 False,而不是 None。我尝试添加一个|default_if_none 过滤器,但什么也没做。当我尝试|default 时,它也更改了 False 值。
深入研究文档,似乎未定义的变量默认设置为 '',它被视为 False。在这种特殊情况下,我只想将未定义的变量视为 True(None 也可以),所以我不想摆弄TEMPLATE_STRING_IF_INVALID。
有没有办法让它将未定义的变量视为 True?或者,有什么方法可以区分 '' 和 False?
【问题讨论】: