jinja2 渲染报告变量未定义
jinja2 rendering report variable not defined
我有一个以字典作为元素的列表。渲染失败。有人可以帮忙吗。非常感谢。
{% for i in mylist if 'name' in i %}
{% set v = i['name'] %}
{% else %}
{% set v = 'notfound' %}
{% endfor %}
{% set mydict = { 'name' : v } %}
总是报v未定义。真是一头雾水。
感谢您的帮助。
这背后的原因是 jinja2 作用域。这是解决它的方法。
{% set vlist = [] %}
{% set mylist = [ {'name':'myvalue'} ] %}
{% for i in mylist if 'name' in i %}
{% do vlist.append(i['name']) %}
{% break %}
{% else %}
{% do vlist.append('notfoundinlist') %}
{% endfor %}
我有一个以字典作为元素的列表。渲染失败。有人可以帮忙吗。非常感谢。
{% for i in mylist if 'name' in i %}
{% set v = i['name'] %}
{% else %}
{% set v = 'notfound' %}
{% endfor %}
{% set mydict = { 'name' : v } %}
总是报v未定义。真是一头雾水。
感谢您的帮助。
这背后的原因是 jinja2 作用域。这是解决它的方法。
{% set vlist = [] %}
{% set mylist = [ {'name':'myvalue'} ] %}
{% for i in mylist if 'name' in i %}
{% do vlist.append(i['name']) %}
{% break %}
{% else %}
{% do vlist.append('notfoundinlist') %}
{% endfor %}