python - Flask:Jinja for 循环每个模板只工作一次
问题描述
我有一个 Flask 应用程序,我正在使用 for 循环动态生成 html:
{% for subcategory in subcategories|unique: %}
List of projects:
<p> {{ subcategory }}</p>
{% endfor %}
{% for subcategory in subcategories|unique: %}
List of subcategories:
<p> {{ subcategory }}</p>
{% endfor %}
但是,第二个 for 循环不会产生任何结果。
如果我删除“|唯一”,那么它可以工作。
为什么?
解决方案
您可能传入的是生成器,而不是列表或其他可迭代对象。
一个示例生成器可能是:
subcategories = [str(item) for item in subcategories]
在 Python 端,尝试将项目包装在列表中,然后再将其发送到 Jinja 渲染器:
subcategories = list([str(item) for item in subcategories])
推荐阅读
- oracle - 无法在 OBIEE 中查询多个学科领域
- angular - 在 angular4 的输入字段中添加千位分隔符
- android - 在房间持久库中无法使用 like 子句
- android - 有两行字时如何在Android中为按钮保留圆角
- javascript - 克隆一个画布矩形,单击按钮时带有动画
- javascript - 如何在 Reactjs 中使用 Array.map 格式化和显示 JSON 数据?
- typo3 - TYPO3:元标记作者,如何同时使用姓名和电子邮件
- java - 如何告诉 mysql 表将下一条匹配记录检索到我的默认表模型中
- python - env:python:参数列表太长
- angular - 角反应形式,多选选项不显示第一个“选定的禁用”选项