我有一个ListView
模型,它会生成所需的查询集。然后,我是我的模板,我做了类似的事情:
{% for i in queryset %}
{{i.var1}}
{% endfor %}
..这完美无缺。但是,我想要做的是:
{% for i in queryset %}
{% if i.var1 == "mystring" %}
<skip this entry and do i++>
{% else %}
{{i.var2}}
{% endfor %}
..但我如何<skip this entry and do i++>
?
答案 0 :(得分:1)
这可能会对你有所帮助
{% if i.var1 != "mystring" %}
这只是跳过mystring和循环计数器也增加
答案 1 :(得分:0)
如果您需要进行此类编辑,那么它不能完美运行,您应该在视图内部的查询集中过滤这些条目
.exclude(var1="mystring")
在评论中,您声明查询集来自可迭代,因此至少您可以在视图中进行列表理解
[i for i in queryset if i.var1 != "mystring"]
如果这是您在模板中必须要做的事情,那么唯一的方法是使用您在问题中已经拥有的完整的if语句