Django视图:如何显示字典中的数据

时间:2010-11-30 03:33:21

标签: python django django-templates django-views

我有一个像{'a':{'c':2, 'd':4 }, 'b': {'c':'value', 'd': 3}}

这样的词典

如何将其显示在视图中的表格中?

3 个答案:

答案 0 :(得分:3)

回答问题here

总之,您可以像访问python词典一样访问代码

data = {'a': [ [1, 2] ], 'b': [ [3, 4] ],'c':[ [5,6]] }

您可以使用dict.items()方法获取字典元素:

<table>
<tr>
    <td>a</td>
    <td>b</td>
    <td>c</td>
</tr>

{% for key, values in data.items %}
<tr>
    <td>{{key}}</td>
    {% for v in values[0] %}
    <td>{{v}}</td>
    {% endfor %}
</tr>
{% endfor %}
</table>

答案 1 :(得分:2)

取决于您希望如何做到这一点。在Django模板中,您可以像访问方法一样访问密钥。也就是说,Python代码就像

print my_dict['a']['c']    # Outputs: 2

变为

{{ my_dict.a.c }}    {# Outputs: 2 #}

在Django模板中。

答案 2 :(得分:0)

遇到了类似的问题,我是这样解决的

蟒蛇

views.py
#I had a dictionary with the next structure
my_dict = {'a':{'k1':'v1'}, 'b':{'k2': 'v2'}, 'c':{'k3':'v3'}}
context = {'renderdict': my_dict}
return render(request, 'whatever.html', context)

HTML

{% for key, value in renderdict.items %}
    <h1>{{ key }}</h1>
    
    {% for k, v in value.items %}
      <h1>{{ k }}</h1>
      <h1 > {{ v }}</h1>
    {% endfor %}

{% endfor %}

The outputs would be 
{{ key }} = a 
{{ k }} = k1 
{{ v }} = v1  #and so forth through the loop.