我在Django模板中有一个for循环。在那之后,我检查是否有巧合。但在某些情况下,可能有3个巧合。我只需要展示第一个巧合。现在,我的代码返回名称3次,因为,有3个巧合
{% for ip in ips %}
{% if d.name == ip.name %}
<strong>{{ d.name}} </strong>
{% endif %}
{% endfor %}
<<p>解决方案/strong>在django模板中不可能打破forloop,所以我决定通过queryset区分类似的名称来改变views.py
ips = Point.objects.defer('point').order_by('name').distinct('name')
我不建议在Django模板中这样做,但在视图本身。但如果你不能,那么你可以使用{{ forloop|break }}
。
像这样:
{% for ip in ips %}
{% if d.name == ip.name %}
{{ forloop|break }}
<strong>{{ d.name}} </strong>
{% endif %}
{% endfor %}
查看这里的小片段示例…