首页 > 解决方案 > 在 Django 中打破 HTML 中的 for/if 循环

问题描述

我在 Django 中使用 HTML 模板并搜索对象列表。如果其中一个存在,我想打印一些东西。但是,一旦打印出来。我不想再打印了,即使还有更多。(即,如果其中一个对象满足条件,我想打印出与 100 个对象满足条件相同的内容)

这是我到目前为止所拥有的:

                {% for object in objects %}
                {% if object.attr1 == true %}
                Placeholder
                {% endif %}
                {% endfor %}

如果我想要打印占位符的任何对象的 object.attr1 为 true。但我只想做一次。Django 模型中的困难使得使用这种类型的 for 循环是我唯一的解决方案之一。这可能吗?

标签: htmldjangofor-loop

解决方案


你可以这样做

from django.shortcuts import render

def home(request):
   model = YourModel.objects.filter(attr1=true).all()
   return render(request, "your_template.html", {"objects": model})

推荐阅读