如何正确导入jinja2.ext.loopcontrols到Flask?
How to import jinja2.ext.loopcontrols to Flask correctly?
我在 Flask 文档中读到我应该导入 "jinja2.ext.loopcontrols" 扩展以使用范围标签。
我正在尝试这样做:
app = Flask(__name__)
app.jinja_env.add_extension('jinja2.ext.loopcontrols')
app.config.from_object(__name__)
但每次我使用范围标签时,它都会给我:
TemplateSyntaxError: Encountered unknown tag 'range'. Jinja was looking for the following tags: 'endblock'. The innermost block that needs to be closed is 'block'.
这是我在模板文件中的代码:
{% range number from 1 to 5 %}
{% for x in posts %}
<p>The value of X is: </p> {{ x }}
{% endfor %}
{% endrange %}
那么正确的导入方式是什么?
以下是 loopcontrols
扩展程序的使用方法:
{% for _ in range(1, 6) %}
....
但是,如果您只想获得前 5 个帖子,您可以使用列表切片(如果您的 posts
变量是一个列表):
{% for x in posts[:5] %}
....
我在 Flask 文档中读到我应该导入 "jinja2.ext.loopcontrols" 扩展以使用范围标签。
我正在尝试这样做:
app = Flask(__name__)
app.jinja_env.add_extension('jinja2.ext.loopcontrols')
app.config.from_object(__name__)
但每次我使用范围标签时,它都会给我:
TemplateSyntaxError: Encountered unknown tag 'range'. Jinja was looking for the following tags: 'endblock'. The innermost block that needs to be closed is 'block'.
这是我在模板文件中的代码:
{% range number from 1 to 5 %}
{% for x in posts %}
<p>The value of X is: </p> {{ x }}
{% endfor %}
{% endrange %}
那么正确的导入方式是什么?
以下是 loopcontrols
扩展程序的使用方法:
{% for _ in range(1, 6) %}
....
但是,如果您只想获得前 5 个帖子,您可以使用列表切片(如果您的 posts
变量是一个列表):
{% for x in posts[:5] %}
....