Django模板显示项目值或空字符串


88

我在模板中的代码是这样的:

{% for item in items %}
    {{ item.somefield }}
{% endfor %}

如果item.somefield不是None,我想显示项目值,或者显示一个空字符串。我不想使用{%if item.somefield%}语句,我想要类似{{item.somefield或''}}}的东西(我尝试过,但是不起作用)

Answers:


225

您需要default_if_none模板过滤器(doc)。

default_if_none 如果变量为“ None”,将显示给定的字符串。

default 如果变量的值为False,将显示字符串,即空字符串,空列表等

{{ item.somefield|default_if_none:"" }}
{{ item.somefield|default:"" }}

感谢@rockingskier;)
Moe

12
{{ item.somefield|default_if_none:"" }}

5
您可能想在答案中添加一些解释,而不仅仅是代码。这可以帮助提出问题的人更好地理解您的答案。
Victor Zamanian '18
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.