我正在尝试更改循环中变量的值,这样我只能为第一次迭代做一些事情,然后为所有下一次迭代做其他事情。
{% set vars = {'foo': True} %}
{% for line in project[2].split('[newline]') %}
{% if vars.foo %}
its true!
{% else %}
its false!
{% endif %}
{% vars.update({'foo': False}) %}
{% endfor %}
输出看起来像'真实!这是真的!这是真的!它是真的!',所以Jinja肯定没有得到变量已经改变的事实。
我还试图将{% vars.update({'foo': False}) %}
换成{% vars.foo == False %}
,但它没有用。
感谢您的帮助
答案 0 :(得分:3)
我解决了我的问题!
不需要使用变量,Jinja2具有计算循环中迭代次数的东西。
所以我只是改变了我的代码:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="tnxst" type="hidden" id="tnx-status" value="publish" />
<span id="status-p"></span>