使用Jinja2模板渲染Python列表为HTML表格时的显示问题
解决Jinja2渲染列表为HTML表格重复显示整个列表的问题
你这问题一眼就能看出来啦——在循环里你输出的是整个working_days列表,而不是当前循环的单个元素day!
看你现在的模板代码,<td>标签里写的是{{working_days}},这就导致每次循环都把整个列表完整打印一遍,刚好你的列表有7个元素,所以页面就重复显示了7次整个列表。
修改后的模板代码应该是这样的:
<table> <tr> <th>Date:</th> <th>Scheduled:</th> </tr> {% for day in working_days %} <tr> <td>{{ day }}</td> <td><!-- 如果有对应的日程内容,在这里补充即可 --></td> </tr> {% endfor %} </table>
简单说下修改点:
- 把
<td>{{working_days}}</td>改成<td>{{ day }}</td>,这样每次循环都会取当前迭代的单个元素,也就是列表里的每一天日期。 - 另外注意你原来的表头里有"Scheduled:",但循环里只写了一个
<td>,如果有对应的日程数据,记得补充第二个<td>的内容哦。
修改之后,每个表格单元格就会分别显示列表里的单个日期,比如maandag 12 maart、dinsdag 13 maart这些,而不是整个列表重复7次了。
内容的提问来源于stack exchange,提问作者user7137459
相关产品推荐
相关产品推荐

