我正在尝试使用django在模板中的字典中显示字典中的值。我的观点中有一个这样的字典:
characters = {
"char1": {'name': "David",
'stars': 4,
'series': "All star"},
"char2": {'name': "Patrick",
'stars': 3,
'series': "Demi god"}
}
我可以在页面上显示整个字典,但是我只想显示“名称”和“大卫”键:值对。我在模板中写了以下内容:
{% for char in characters %}
{% for key, value in char %}
{{ key }}: {{ value }}
{% endfor %}
{% endfor %}
然而,这并没有向我展示任何东西。这个双循环有什么问题?
谢谢
循环键值对时,必须添加.items。见下文(Python 3):
{% for char in characters.items %}
{% for c in char %}
name: {{ c.name }}
{% endfor %}
{% endfor %}
在Python 2中它将是.iteritems
{% for char in characters.iteritems %}
{% for c in char %}
name: {{ c.name }}
{% endfor %}
感谢kfarnell的帮助,我终于得到了这个:
{% for character, params in characters.items %}
{{ params.name }}: {{ params.stars }}
{% endfor %}