【问题标题】:Problems passing a dictionary to a template in Django将字典传递给 Django 中的模板的问题
【发布时间】:2013-04-10 19:35:08
【问题描述】:

我遇到了一个看似简单的问题:

我想将字典传递给模板,然后让模板在页面上呈现该字典。但是,当我运行该页面时,字典没有显示出来......

这是我的浏览页面:

def display_meta(request):
    values = request.META.items()
    values.sort()
    c = Context(values)
    return render_to_response('meta_data.html', c)

这是我的模板:

{% extends "base.html" %}
{% block content %}
<table>
{% for k, v in c %}
<tr><td> {{k}} </td><td> {{v}} </td></tr>
{% endfor %}
</table>
{% endblock %}

我不确定出了什么问题。任何帮助将不胜感激。谢谢!

【问题讨论】:

  • 您是否可以使用 c 变量在模板中显示任何内容?
  • context 不是第二个参数,第二个参数必须是普通字典

标签: django templates dictionary html-table


【解决方案1】:

您需要将上下文作为字典传递。你会这样做

def display_meta(request):
    values = request.META.items()
    values.sort()
    return render_to_response('meta_data.html', {'c': values})

每个键代表可用的变量,在这种情况下,c 将是一个包含values 中项目的字典

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-21
    • 2012-03-02
    • 2015-04-19
    • 2021-07-27
    相关资源
    最近更新 更多