Joh*_*Boy 10 python jinja2 flask
我有一个带有Flask Jinja for循环的HTML模板,它会生成一个表格,如下所示:
<tbody>
{% for segment in segment_details %}
<tr>
<td>{{segment}}</td>
<td>{{segment_details['{{segment}}']}}</td>
</tr>
{% endfor %}
</tbody>
Run Code Online (Sandbox Code Playgroud)
我正在尝试遍历不同长度/键的文档,并将表中的每一行显示为键和值.在我的Python代码中,我得到了这个在shell中有所需的响应:
for item in segment_details:
print(item, segment_details[item])
Run Code Online (Sandbox Code Playgroud)
但是在Flask中,我正确地列出了所有行的项目,但是
{{segment_details['{{segment}}']}}
没有产生任何价值,我尝试过使用和不使用单引号.这可能吗?
这是您的错误所在:
<td>{{segment_details['{{segment}}']}}</td>
Run Code Online (Sandbox Code Playgroud)
不需要{{ }}内部。应该只是:
<td>{{segment_details[segment]}}</td>
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参见Jinja的文档。当你写一个声明(if,for中)Jinja2你使用{% statement %},但是当你访问一个变量就用{{ variable }}。
小智 5
这是一个解决方案
<tbody>
{% for key, segment in segment_details.items() %}
<tr>
<td>{{ key }}</td>
<td>{{ segment }}</td>
</tr>
{% endfor %}
</tbody>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17896 次 |
| 最近记录: |