django模板获取字典项

时间:2014-01-06 13:57:15

标签: django templates dictionary

我尝试使用django模板中的字典,但我无法弄清楚应该如何访问字典的不同值。

我的观点:

def index(request):
    towns = Town.objects.filter(user=request.user)

    resources = []
    for town in towns:
        resources.append([town, view_resources(town)])

    print resources

    return render(request, 'index.html', {'resources': resources})

我的view_resources会像这样返回一个dictonary:

{'coin': coin, 'grain': grain, 'iron': iron, 'stone': stone, 'wood': wood,}

我的印刷品提供了类似的内容:

[[<Town: admin's Town>, {'wood': 200, 'stone': 203, 'coin': 176, 'grain': 303, 'iron': 203}]]

现在我的模板:

<div>
    <table>
    {% for town, resource in resources %}
        <tr>
            <td>
                <h3>{{ town.name }}</h3>
            </td>
        </tr>
        <tr>
            <td>
                {{ resources.wood }}
            </td>
        </tr>
    {% endfor %}
    </table>
</div>

如何获取“木材”值?

1 个答案:

答案 0 :(得分:3)

在您的代码中,resource是每个元组内的字典,而不是resources

{{ resource.wood }}