2

次の Jinja2 テンプレートがあります。

{% block body %}
    {% for key in tree recursive %}
        {% set outer_loop = loop %}
        {% for subkey in tree[key] %}
            {% if subkey == 'R' %}
                {{ tree[key][subkey] }}
            {% else %}
                {{ outer_loop(dict([(subkey, tree[key][subkey])])) }}
            {% endif %}
        {% endfor %}
    {% endfor %}
{% endblock body %}

tree、次のような Python 辞書です。

    tree = {"A": {"R": [1, 2, 3], "B": {"R": [4, 5, 6]}}}

Python ライブラリ関数dict()です。

問題は、テンプレートが表示されるだけ[1, 2, 3]で、期待どおりに表示されない[1, 2, 3][4, 5, 6]ことです。

明らかに、Jinja で再帰がどのように機能するかについて、私は何かを誤解しています。ヒントはありますか?

4

1 に答える 1