LGR*_*LGR 3 python jinja2 flask
我有两个元素,需要同时循环它们,但在 JINJA(!) 中。当然,我尝试使用 zip() 同时浏览两者(列表和字典),但 jinja 不允许这样做
{% for (i, o) in zip(searches, e_links): %}
<a href="/sid/{{ o }}">
<div>{{ i.time_string }}</div>
Run Code Online (Sandbox Code Playgroud)
错误:
jinja2.exceptions.UndefinedError: 'zip' is undefined
Run Code Online (Sandbox Code Playgroud)
在 jinja 中是否有另一种方法可以同时循环遍历两个项目,或者是否可以通过某种方式将 zip() 函数传递给 jinja?
如果将来有人想知道的话,我能够解决这个问题。您可以简单地 zip() 这两个项目,然后将它们传递给 jinja,如下所示:
return render_template('results.html', packed=zip(searches, e_links))
Run Code Online (Sandbox Code Playgroud)
在模板中,然后只需循环浏览压缩项目:
{% for i, o in packed: %}
Run Code Online (Sandbox Code Playgroud)
是的,总而言之,我花了一个多小时才弄清楚这个问题。