在模板中打印出django request.META

时间:2013-08-16 19:54:04

标签: django django-templates

我正在尝试在模板中打印request.META中的值,但我无法正确使用它。我得到的只是一个错误Could not parse the remainder: '[i]' from 'REQ_META[i]'

下面是我的代码: 在我的views.py

def index (request):
    template = loader.get_template('app/index.html')
    page_data = { 'REQ_META': request.META}
    context = RequestContext(request, page_data)
    return HttpResponse(template.render(context))
index.html中的

{% for i in REQ_META %}
    {{ i }} = {{ REQ_META[i] }} <br />
{% endfor %}

2 个答案:

答案 0 :(得分:0)

嗯,检查request.META对象的正确方法是在视图中使用pdb,或使用django-debugtoolbar等工具。

在我看来,django调试工具栏是一个非常方便的调试工具。

无论如何,你的问题是,REQ_META是一个字典,解析字典元素的方法是:

{% for k, v in REQ_META %}
    {{ k }} = {{ v }} <br />
{% endfor %}

Documentation here

答案 1 :(得分:0)

已有答案,但认为它可能对将来的使用有用:

您只需要访问此对象{{ REQ_META.i }}而不是{{ REQ_META[i] }}


另一种选择是使用django pprint template filter

{{ REQ_META|pprint }}

总是打印出很好的dict对象(以及任何其他python对象)