在for循环中设置iteritem的键值

时间:2018-02-28 09:38:04

标签: jinja2

如何使用我建立的for-loops迭代元素{{ dict.r0t0p1 }}? 接下来是<input..行的期望最终结果。在示例行中,键是r0t0p1,我需要相应的值,在这种情况下,r和t的循环值都是0,但它们对于每个输入行都会改变。

<input type="text" id="r0t0p1" name="r0t0p1" value="{{ dict.r0t0p1 }}"></input>

因此,对于生成dict值的dict键,需要id和name属性的rt的相同值。

{% for r in range(rounds)%}
{% for t in range(tables)%}
    <input type="text"  id="r{{r}}t{{t}}p1"  name="r{{r}}t{{t}}p1" value="{{ dict.r0t0p1 }}"></input>
{%endfor%}
{%endfor%}

我尝试使用set命令来定义cell但是出现以下错误。所以看起来嵌套循环索引不会起作用。

{% set cell = r{{r}}t{{t}}p1 %}
TemplateSyntaxError: expected token 'end of statement block', got '{'

1 个答案:

答案 0 :(得分:1)

尝试这个: -

{% for r in range(rounds)%}
{% for t in range(tables)%}
{% set cell = 'r'+r|string+'t'+t|string+'p1' %}
    <input type="text"  id="{{ cell }}"  name="{{ cell }}" value="{{ dic[cell] }}"></input>
{%endfor%}
{%endfor%}