msm*_*114 2 python jinja2 flask
所以我试图从字典列表中使用Jinja2创建一个HTML表格(由Flask SQL select语句返回).
现在test_list已经存储了一个字典列表(键是DB列).
现在我用这个:
<table style="width:100%">
{% for dict_item in history_list %}
{% for key, value in dict_item.items() %}
<tr>
<th> {{ key }} </th>
<td> {{ value }} </td>
</tr>
{% endfor %}
{% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud)
它确实有效,但它基本上产生了2列(一列是键,一列是列).我想将DB键作为表中的列标题,然后只是放入每列的值.
这可能吗?因为我想要只重复一次密钥?
你需要这样的东西,它提供一个th元素的标题行,然后进入数据行(表的主体).
<table style="width:100%">
<!-- table header -->
{% if history_list %}
<tr>
{% for key in history_list[0] %}
<th> {{ key }} </th>
{% endfor %}
</tr>
{% endif %}
<!-- table rows -->
{% for dict_item in history_list %}
<tr>
{% for value in dict_item.values() %}
<td> {{ value }} </td>
{% endfor %}
</tr>
{% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud)