我遇到了一个问题:我有 4 个包含数据的列表。我需要用这些数据填充表格。这是表的例子:
因此,正如您已经了解的那样,第一列必须是第一个列表中的数据,第二列必须是第二个列表中的数据,......我试着做到了:
{% for i in first_list %}
<tr>
<td>{{i}}</td>
</tr>
{% endfor %}
但是它只填满了第一列,不知道接下来我必须做什么......请帮助我!
您需要更改两件事。
在views.py
文件,而不是返回 4 个不同的列表,而是返回列表的单个压缩版本,如
zipped_list = zip(first_list, second_list, third_list, fourth_list)
现在必须将其传递给正在呈现的 View 文件。
context_dict = {'zipped_list': zipped_list, ......}
并呈现为
return render(request, 'your_view_file', context_dict)
现在在 View 文件中,你可以修改for
模板为
{% for i in zipped_list %}
<tr>
<td>{{i.0}}</td>
<td>{{i.1}}</td>
<td>{{i.2}}</td>
<td>{{i.3}}</td>
</tr>
{% endfor %}
注意您甚至可以迭代 <td>
的以便它使您能够处理任意数量的列,而不仅仅是 4 列。
示例:
{% for row in zipped_list %}
<tr>
{% for column in row %}
<td>{{column}}</td>
</tr>
{% endfor %}
我是一名优秀的程序员,十分优秀!