Search code examples
jinja2

how to iterate over a list of list in jinja


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?


Solution

  • 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 %}
        <tr>
        {% for elem in result %}
            <td>{{elem}}</td>
        {% endfor %}
        </tr>
    {% endfor %}