由jinja中使用 变量遇到 作用域问题

来源:互联网 发布:诺诺莉 知乎 编辑:程序博客网 时间:2024/04/28 03:58

事实上,这个问题起始是可以在后台处理好的,而不必放到模板里。

但,没啥事,玩玩呗。

ok ,假设后台后台传了一个 数组 lt = [1, 2, 3]给模板

模板要展示这个数组之和,

{% set temp = 1%}{% for a in lt %}{% set temp = temp + a%}{% endfor %}然后展示{{temp}}              // 1
很不幸,由于for 这个作用域,在for里修改temp 的值,但却传不出来。temp 的值还是0

这是一个很无聊的想法出现 do 语句。在do 里可以写表达式,但do 又不能赋值

{%set temp=[1]%}{% for  a in lt%}{%do temp.append(temp.pop()+a)%}{%endfor%}{{temp[0]}}      // 7


原创粉丝点击