此{% if x.number == 1 %}
和{% if x.number == 2 %}
效果很好
但{% if x.number == 0 %}
不起作用。为什么呢?
{% for d in data %}
{% for x in d.animalnumber_set.all %}
{{ x.number }} <!-- Nothing displays. ->
{% if x.number == 1 %}
<p>Something</p>
{% endif %}
{% if x.number == 2 %}
<p>Something 2</p>
{% endif %}
{% if x.number == 0 %}
<p>Nothing</p>
{% endif %}
{% endfor %}
{% endfor %}
编辑:
在提交的数据库number
中choices
。如何替换{% if x.number == 0 %}
? == None
也不起作用。
----
1
2
3
4
答案 0 :(得分:2)
如果数据没有值或0,请使用not
{% if not x.number %}
答案 1 :(得分:1)
如果可选择的选项在1-6之间,为什么要检查x.number == 0?这永远不会发生。
如果用户没有任何动物编号,则d.animalnumber_set.all将返回None。所以控制就是检查x是否为空
{% for d in data %}
{% for x in d.animalnumber_set.all %}
{% if x.number == 1 %}
<p>Something</p>
{% endif %}
{% if x.number == 2 %}
<p>Something 2</p>
{% endif %}
{% empty %}
<p>Nothing</p>
{% endfor %}
{% endfor %}