这是我的模板,数据是我想要达到每个词典的键和值的词典列表
<ul>
{% for item in data %}
{% for key in item.keys %}
{% if key == 'Server Name' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ item[key] }}</li>
{% endif %}
{% if key == 'Server Price' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ item[key] }}</li>
{% endif %}
{% endfor %}
</ul>
请帮助我
答案 0 :(得分:1)
只需使用items
:
<ul>
{% for item in data %}
{% for key, value in item.items %}
{% if key == 'Server Name' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ value }}</li>
{% endif %}
{% if key == 'Server Price' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ value }}</li>
{% endif %}
{% endfor %}
</ul>
PS:你确定你不是指forloop.parentloop.last
?
PPS:你有没有办法重新设计你的dicts,所以键中没有空格?
答案 1 :(得分:0)
这对你有用吗?
模板允许您像在任何其他Python代码中一样遍历dict。 这是非常有益的!
<ul>
{% for key, value in data.items %}
{% if key == 'Server Name' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ value }}</li>
{% endif %}
{% if key == 'Server Price' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ value }}</li>
{% endif %}
{% endfor %}
</ul>
或者我错过了什么?
答案 2 :(得分:0)
你可以像在python代码中的for循环一样迭代键值对:
<ul>
{% for item in data %}
{% for key, value in item.items %}
{% if key == 'Server Name' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ value }}</li>
{% endif %}
{% if key == 'Server Price' %}
<li{% if forloop.last %} class='last'{% endif %}>{{ value }}</li>
{% endif %}
{% endfor %}
</ul>