Python 如何将jinja2.ext.loopcontrols正确导入烧瓶?
我在Flask文档中读到,我应该导入“jinja2.ext.loopcontrols”扩展以使用range标记 我正试图通过以下方式做到这一点:Python 如何将jinja2.ext.loopcontrols正确导入烧瓶?,python,flask,jinja2,Python,Flask,Jinja2,我在Flask文档中读到,我应该导入“jinja2.ext.loopcontrols”扩展以使用range标记 我正试图通过以下方式做到这一点: app = Flask(__name__) app.jinja_env.add_extension('jinja2.ext.loopcontrols') app.config.from_object(__name__) 但每次我使用范围标记时,它都会给我: TemplateSyntaxError: Encountered unknown tag 'r
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 %}
{%范围数从1%到5%}
{%x在posts%}
X的值是:{{X}
{%endfor%}
{%endrange%}
那么正确的导入方法是什么呢?以下是如何使用
loopcontrols
扩展:
{% for _ in range(1, 6) %}
....
但是,如果只想获得前5篇文章,可以使用列表切片(如果posts
变量是列表):
你想达到什么目的?@doru我只是想从列表中获得前5项。。你的答案现在起作用了,谢谢。
{% for x in posts[:5] %}
....