how to iterate over a list of list in jinja

stamaimer picture stamaimer · May 5, 2015 · Viewed 83.1k times · Source

I have a list of list like :

    [[elem0, elem1, elem2], [elem3, elem4, elem5], [elem6, elem7, elem8], ...]

I wrote the follow template file :

    {% for result in results %}
        <tr>
            <td>result[0]</td>
            <td>result[1]</td>
            <td>result[2]</td>
        </tr>
    {% endfor %}

But it didn't work, What i can think is use nested for. Is there another method to access the element in the list in jinja?

Answer

zxzak picture zxzak · May 5, 2015

You still need to output the loop variables inside braces.

{% for result in results %}
            <tr>
                <td>{{ result[0] }}</td>
                <td>{{ result[1] }}</td>
                <td>{{ result[2] }}</td>
            </tr>
{% endfor %}

Also, consider a nested for loop:

{% for result in results %}
  {% for elem in result %}
    <td>{{elem}}</td>
  {% endfor %}
{% endfor %}