2014-02-11 34 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