我对html中的表格不太满意,所以这个问题可能很容易回答。
我将列表{{ attributes }}
列表传递给模板,我想创建一个包含2行和多列的表。
TEMPLATE:
<div id="table">
<table border=0>
{% for attr in attributes %}
<td>
<th>{{ attr.0 }}</th>
{{ attr.1 }}
</td>
{% endfor %}
</table>
</div>
我希望{{ attr.0 }}
成为标题并显示在一行中,{{ attr.1 }}
显示在第二行。
答案 0 :(得分:2)
怎么样
<div id="table">
<table border=0>
<thead>
<tr>
{% for attr_head in attributes.keys %}
<th>{{ attr_head }}</th>
{% endfor %}
</tr>
</thead>
<tbody>
<tr>
{% for attr in attributes.values %}
<td>{{ attr }}</td>
{% endfor %}
</tr>
</tbody>
</table>
</div>
只需遍历dict的键并将它们呈现为表头中的th
元素,然后遍历这些值,将它们呈现在tbody
中。 th
和td
是表格中的列,tr
是行。
另外,你应该阅读html tables,它们并不那么难
答案 1 :(得分:1)
你可以循环两次,一次用于内容的标题一次?
<div id="table">
<table border=0>
<tr>
{% for attr in attributes %}
<th>{{ attr.0 }}</th>
{% endfor %}
</tr>
<tr>
{% for attr in attributes %}
<td>{{ attr.1 }}</td>
{% endfor %}
</tr>
</table>
</div>