如何在 Django 中创建一个遍历列表中元素的范围 for 循环

How to make a ranged for loop that iterates over elements in a list in Django

我是 Django 3 的新手,但我找不到任何答案来说明使用 Django 模板语法的最佳方式,以便迭代上下文中给出的列表中的前五个元素。

为了澄清,我正在寻找一种方法来做到这一点:

(在上下文中给出以下列表["one", "two", "three", "four", "five", "six"]) 我想以类似于此香草 Python 代码的方式显示前五个元素:

for item in range(5):
    print(list[item])

如果有人可以尝试向我展示如何打破模板中的循环(如果可能的话),我将不胜感激。 有办法做到其中任何一项吗?

你可以这样做:

{% for item in list%}
    {% if forloop.counter < 6}
        // Do what you need
    {% endif %}
{% endfor %}

尝试:

{% with new_list=list|slice":5" %}
    {% for item in new_list %} 
        <h1>Check</h1>
    {% endfor %}
{% endwith %}

参见:django_template_with and django_template_slice