Ess*_*eTi -1 django templates django-templates
我来自这个问题在Django模板中使用变量作为字典键
我在我看来创建了这个上下文:
{'cats': {'LIST1': ['a','b','c'], 'LIST2': ['aa','bb','cc','dd'], 'LIST3': ['f','g']}}
Run Code Online (Sandbox Code Playgroud)
我想要做的是打印列表标题,然后打印所有项目,如
LIST1:
- a
- b
- c
Run Code Online (Sandbox Code Playgroud)
对于所有列表,所以我在我的模板中这样做了
{% for l_name, l in cats %}
{{ l_name }}
{%for lv in l %}
{{ lv }}
{% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
这种打印仅列表的名称,而不会打印出清单.哪里出错了?
谢谢
如果要迭代键和值,可以使用:
{% for name, lst in cats.iteritems %}
....
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
这只是调用iteritems字典的方法,它在2元组列表上返回一个迭代器.
Django的{% for %}标签文档也有一些很好的例子.