我在使用模板语言点符号访问字典中的值时遇到问题。
以下是我的一本词典的例子:
{2L: {'dob': datetime.date(2012, 7, 7), 'image': u'', 'user_id': 3L, 'id': 2L, 'email': u'blank@blank.com'}, 3L: {'dob': datetime.date(2012, 7, 7), 'image': u'', 'user_id': 4L, 'id': 3L, 'email': u'blank@blank.com'}}
我在Python中访问它的方式是这样的:
D[2]['email']
以下是我在模板中尝试过的内容:
{% for d in D %}
{% if d == a.user_id %} {{ D.d.email }} {% endif %}
{% endfor %}
它没有打印出任何东西......(我通过在执行块中添加一些HTML来测试我的布尔值计算为True。
你能帮我写下这个符号吗?我知道这一点:{{ D.d.email }}
这是错误的。
谢谢。
答案 0 :(得分:5)
你不希望{{ D.d.email }}
查找D ['d']。 Django模板中没有语法可以将变量用作键。
使用此:
{% for d,v in D.items %}
{% if d == a.user_id %} {{ v.email }} {% endif %}
{% endfor %}