将python列表传递给django模板

时间:2012-10-06 15:37:55

标签: django django-templates django-views django-errors

我想在模板上显示一些内容。所以我有一个视图来生成该列表并将其传递给模板,如下所示:

newlinks = []
try:
    links=urllib2.urlopen("<<Some HTML file link>>").readlines()
except (urllib2.HTTPError):
    links = ''
    pass
for link in links:
    newlinks.append(link[0:-1])                       
return render_to_response('template11.html', {'links',newlinks}, context_instance=RequestContext(request))

但在渲染时,我得到TypeError

Exception Type: TypeError
Exception Value: unhashable type: 'list'

这是模板代码:

{% for link in links %}
    <li>{{ link }}</li>
{% endfor %}

我不明白这个错误。此外,如果这种方法是错误的(我认为是),那么我如何将列表传递给模板呢?

2 个答案:

答案 0 :(得分:10)

return render_to_response()中,{'links',newlinks}导致错误。它应该是{'links': newlinks}

答案 1 :(得分:2)

以下是您将在template11.html

中添加的内容
<ul>
  {% for link in links %}
    <li>{{ link }}</li>
  {% endfor %} 
</ul>