2012-07-10 19 views
0

我在使用模板語言點符號訪問字典中的值時遇到了問題。使用Django中的點符號訪問字典時遇到問題

這裏是什麼我的字典裏的一個看起來是這樣一個例子:

{2L: {'dob': datetime.date(2012, 7, 7), 'image': u'', 'user_id': 3L, 'id': 2L, 'email': u'[email protected]'}, 3L: {'dob': datetime.date(2012, 7, 7), 'image': u'', 'user_id': 4L, 'id': 3L, 'email': u'[email protected]'}} 

我會訪問這個在Python的方法是像這樣:

D[2]['email'] 

這裏就是我嘗試在我的模板:

{% for d in D %} 
    {% if d == a.user_id %} {{ D.d.email }} {% endif %} 
{% endfor %} 

它不打印出任何東西......(我測試了我的布爾評估通過在執行塊內添加一些HTML,將其設置爲True。

你能幫我解釋一下這個符號嗎?我知道它是這樣的:{{ D.d.email }}這是錯誤的。

謝謝。

回答

5

你不想要{{ D.d.email }},看起來D ['D']。 Django模板中沒有使用變量作爲關鍵字的語法。

使用此:

{% for d,v in D.items %} 
    {% if d == a.user_id %} {{ v.email }} {% endif %} 
{% endfor %}