使用迭代列表中的索引

发布于 2021-01-29 18:01:06

我试图根据当前正在另一个列表上迭代的索引显示来自其他列表的值,但无法弄清楚如何访问各个项目。

{% for row in myarray.all %}
    <tr>
    <th>{{ my_other_array_where_I_cant_access_elements.forloop.counter }}</th>
    <td>{{ row }}</td>
    </tr>
{% endfor %}

如您所见,我尝试使用forloop.counter它,但是它什么也不显示,它只是创建一个空的表头元素。

我的其他数组在视图中的定义如下,如果删除,forloop.counter则可以看到整个数组已打印到表头

 my_other_array_where_I_cant_access_elements = ["X", "Y", "Z", "XX", "YY"]

如果我错过了任何必需的详细信息,请告诉我。

关注者
0
被浏览
46
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    听起来您想同时遍历两个列表,换句话说就是zip()列表。

    如果是这种情况,最好在视图中执行此操作并在上下文中传递:

    headers = ["X", "Y", "Z", "XX", "YY"]
    data = zip(headers, myarray.all())
    return render(request, 'template.html', {'data': data})
    

    然后,在模板中:

    {% for header, row in data %}
        <tr>
            <th>{{ header }}</th>
            <td>{{ row }}</td>
        </tr>
    {% endfor %}
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看