我正在挠头,试图从Jinja2中的嵌套dict中正确地格式化一个表,但没有运气。
敕令是这样的:
dict = {
key_1: {a: 1, b: 2, c: 3},
key_2: {a: 11, b: 12, c: 13},
}
我希望表看起来像这样:
| key_1 | key_2 |
| ---------- | ------------ |
| a | b | c | a | b | c |
| ---------- | ------------ |
| 1 | 2 | 3 | 11 | 12 | 13 |
最接近我的是:
<table>
<tr>
{% for k1 in dict.keys() %}
<td>{{ k1 }}</td>
</tr>
<tr>
{% for k2, value in dict[k1].items() %}
<td> {{ k2 }} </td>
{% endfor %}
</tr>
<tr>
{% for k2, value in dict[k1].items() %}
<td> {{ value }} </td>
{% endfor %}
{% endfor %}
</tr>
</table>
但是这样做不起作用。我在赋值k1变量时遇到了麻烦,因为我必须扩展循环,这样会破坏表的布局。我宁愿不重新排列dict或将其拆分为几个dict。
我能把一个像我所拥有的那样的法令转换成Jinja2中的那个结构的表吗?如果能,怎么做?
1条答案
按热度按时间mftmpeh81#
我没有测试我的解决方案,可能有错别字,但要点是:
colspan
,用于正确格式化(
dict
不应用作变量名,应重命名为dct
。)