我有两本词典
dictlist = {'Red': {345: 25.0, 123: 67.0, 678: 0, 777: 0}, 'Yellow': {345: 20, 123: 10, 678: 10, 777: 10}, 'Blue': {345: 25.0, 123: 67.0, 678: 0, 777: 0}
dict1 = {345: 4, 123: 4, 678: 3, 777: 1}
我想要一个适用于每种颜色的模板: 代码/百分比(来自dictlist)/总计(来自dict1)
到目前为止,我已经:
{% for key, val in dictlist.items %}
<h2>{{ key }}</h2>
<table>
<tr>
<td>Code</td>
<td>Percentage</td>
</tr>
{% for k,v in val.items %}
<tr>
<td>{{ k }}</td>
<td>{{ v }}</td>
{% for k in dict1.items %}
<td>{{ dict1.items.k }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
我无法从dictlist中的dict1中获取匹配键for循环...我怎样才能在循环中访问不同的字典呢?
提前致谢
答案 0 :(得分:0)
这可能是使用模板标记的好用例:
@register.filter
def get_item_from_dict(d, key):
return d.get(key)
并在模板中
你可以这样做:
{%for dict1_k,dict1_v in dict1.items%} {{dict1_v | get_item_from_dict:k}} {%endfor%}
OR
根据评论,只是
<td>{{ dict1|get_item_from_dict:k }}</td>