Рекурсивный цикл jinja2 против словаря

У меня есть следующий словарь:

{'a': {'b': {'c': {}}}}

И следующий шаблон Jinja2:

            {% for key in dictionary recursive %}

            <li>{{ key }}
            {% if dictionary[key] %}
                <ul>{{ loop(dictionary[key]) }}</ul>
            {% endif %}
            </li>

        {% endfor %}

Но Jinja2 всегда выводит:

<ul>
    <li>a</li>
    <ul>
        <li>b</li>
    </ul>
</ul>

Я понял, что при использовании рекурсии он также покажет мне элемент "c", но он работает только для глубины 2. Почему словарь не меняется на словарь [ключ] на каждой итерации цикла? Словарь всегда является исходным словарем .

8
задан Tarantula 9 December 2011 в 23:30
поделиться