jinja2.exceptions.TemplateAssertionError: no filter named 'zip'(这一类的问题的解决办法)

关于jinjia2 模板使用python语法的问题。

我想在我的jinjia2模板中使用

{% for i,x in zip(y, range(0,5)) %}

这样的语法时 发现 报错了,根本不能使用这样的语句。

 

解决办法:

1先在要使用Flask使用的Jinja2环境中render_template()zip()函数创建'zip'过滤器。

app = Flask(__name__)
app.jinja_env.filters['zip'] = zip #添加这个方法

2.在你要是有的地方调用即可:

<ul>
   {% for v,x in data|zip(range(0,5)) %}
        <li id="imgCard{{ x }}">
            <a href=""><span style="opacity:0;"></span></a>
            <img src="{{ url_for('static',filename='uploads/'+v.logo) }}" alt="">
                        <p style="bottom:0">{{ v.title }}</p>
	    </li>
   {% endfor %}
</ul>

 

posted @ 2018-09-27 16:21  a_py  阅读(898)  评论(0)    收藏  举报