Jinja if for语句在第一次运行后中断循环

时间:2018-12-14 00:31:13

标签: jinja2

好吧,在Jinja中,我在两个嵌套的for循环内有一个if语句,这些循环遍历两个不同的数字对。键和f。我想在键== f时在表中添加新行。当我运行不带if语句的代码时,有两个数字相同时有四次。但是,当我包含if语句时,它只运行一次,仅显示第一对数字。

<table>
<tr>
  <th>Questions</th>
  <th>Option ID</th>
  <th>Date</th>
  <th>ExtraInput</th>
  <th>score</th>
  <th>Question ID</th>
</tr>
{% for x in response %}
{% for y in test_array %}
{%if x[5] == y %}
  <tr>
    <td data-th="Patient ID">{{ x[0] }}</td>
    {% for key, value in optionTrueData.items() %}
    {%if x[5] == key %}
    <td data-th="Email">{{ value }}</td>
    {%endif%}
    {% endfor %}
    <td data-th="Age">{{ x[2] }}</td>
    <td data-th="Email">{{ x[3] }}</td>
    <td data-th="Email">{{ x[4] }}</td>
    <td data-th="Gender">{{ x[1] }}</td>
  </tr>
  {%elif y[0] ==  x[5][1:3] and y is string() == false%}
  <!-- Nested Loop Here -->
  {% for f in y %}
  {% for key, value in optionTrueData.items() %}
  <tr>
    <td data-th="Email">{{key}} and {{f}}</td>
  </tr>

  {% endfor %}
  {% endfor %}
  {%endif%}
  {% endfor %}
{% endfor %}

0 个答案:

没有答案