在不增加模板变量的情况下,这将是一种老生常谈的方法,我如何“记住”我的subskill变量在哪个级别,并正确地“增量”Django模板中的级别计数器?在
我有一个字典列表,如下所示:[{'level': 0, 'skill': 'style a page using CSS'}, {'level': 0, 'skill': 'download JSFiddle'}, {'level': 1, 'skill': 'learn django'}, {'level': 2, 'skill: 'customize a template'}]
我想把它渲染成这样:
但我无法找到一种方法来正确地增加django模板中的计数器变量。在
我现在使用的是:
{% with level=0 %}
<h1 align="center"> Level: {{level}} </h1>
{% for subskill in subskills %}
{%if subskill.level > level%}
<h1 align="center"> Level:{{level|add:1}} </h1>
{%endif%} ... {%endfor%} {%endwith%}
我现在所拥有的只能增加一级,但是这个增量不会被存储。所以是0级,1级,1级,1级
正如评论中所建议的,通过改变我的列表结构
subskills = {0:[{'skill': 'style a page using CSS'}, {'skill': 'download JSFiddle'}], 1: [{'skill': 'learn django'}], 2: [{'skill: 'customize a template'}]}
传递到视图
return render(request, 'subskills.html', {'subskills': subskills})
然后在模板中渲染:
{% for level, subskill_list in subskills.items%} <h1 align="center"> Level: {{level}} </h1> {% for subskill in subskill_list %} render subskill here... {% endfor %} {% endfor %}
谢谢彼得,它帮了我!在
正如你在回答中所说:
它将再次提供字典。 把键和值呈现出来, 我们可以使用:
^{pr2}$第一个和第二个将为您提供与字典中的项对应的提取的键和值。在
相关问题 更多 >
编程相关推荐