2016-02-21 2 views
0

Мне нужно обработать вложенный словарь в шаблоне, выполнить одну операцию на конечном узле и действовать рекурсивно, если узел имеет дочерние элементы.Вложенный словарь Django в шаблоне, тест для конечного узла

сниппеты/recursion.html

{% for k,v in dict.items %} 
    {% if v.has_children %} <<<< [A] WHAT IS THE CHECK HERE IF THE NODE HAS CHILDREN???? 
     {% include "snippets/recursion.html" with dict=v %} 
    {% else %} 
     <h2>{{k}}</h2> 
     {{v}} 
    {% endif %} 
{% endfor %} 

В приведенном выше [A], как я могу проверить значение для каждого словарной записи, чтобы увидеть, если это еще один словарь и не терминал?

+0

ли ответ решить вашу проблему.? – Satyajeet

+0

@ Satyajeet да, это очень понравилось. –

ответ

2

Вы можете просто использовать, если с dict.items

{% for k,v in dict.items %} 
    {% if v.items %} 
     {% include "snippets/recursion.html" with dict=v %} 
    {% else %} 
     <h2>{{k}}</h2> 
     {{v}} 
    {% endif %} 
{% endfor %} 
Смежные вопросы