2014-02-11 2 views
0

Не удалось использовать ключевое значение для циклов в системе шаблонов Django и задалось вопросом, может ли кто-нибудь помочь. Я могу получить результаты только в том случае, если я включу в конец цикла for «values.1.items» вместо «values.items», который ничего не производит.Ключевое значение для шаблона цикла - запрос Django

Есть много «ценностей», и я не могу на всю жизнь выяснить, почему я должен указывать каждый элемент численно. Я хочу отобразить все элементы в этом цикле. Спасибо за помощь!

{% for key, values in obj_as_json.items %} 
    {% for k, v in values.1.items %} 
     {{ k }}: {{ v }}<br><br> 
    {% endfor %} 
{% endfor %} 

ответ

2

значения список словарей, а не словарь или простой список это будет выглядеть что-то вроде этого

values = [{'k':'v'},{'k1':'v1'},...] 

вы можете цикл над ним, как список

{% for key, values in obj_as_json.items %} 
    {% for mydict in values %} 
     {%for k,v in mydict.items %} 
      .... 

, вы также можете получить к нему доступ по его индексу в списке

{% for k,v in values.1.items %} 

в основном такая же, как

for k,v in values[1].items(): 

в нормальном питона

+0

Спасибо. Я уверен, что ваш ответ - ответ. Но я столкнулся с другой проблемой, когда два из значений являются «int», и поэтому бросание объекта «int» не является итерируемой »ошибкой. Любые предложения по тому, как это решить? – Jack

+1

вы можете написать фильтр, чтобы определить тип объекта ... или проверить, находится ли ключ в списке ключей, которые не возвращают словарь. –

+0

Спасибо - получил базовый оператор if, который входит в мой шаблон. Не красиво, но это работает! Большая благодарность. – Jack

Смежные вопросы