我正在尝试传递到Django中从视图到模板的列表。
在我的文件wiew.py中,我定义了名为hour
的视图# This Python file uses the following encoding: utf-8
from django.shortcuts import render
from django.http import HttpResponse
from datetime import datetime
from django.shortcuts import render_to_response
# Create your views here.
def hour(request):
now = datetime.now()
list = ['Bern','Bob','Eufronio','Epifanio','El pug']
return render_to_response('hour.html',list)
我在视图中使用了shorcuts。
我有一个名为hour.html的模板,所以这样:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8">
<title>Date</title>
</head>
<body>
The names are:
{%for item in list%}
<li>{{item}}</li>
{% endfor %}
</body>
</html>
但我的模板hour.html在浏览器中显示为空。如何将列表从我的视图发送到模板。感谢旅游关注
答案 0 :(得分:6)
您应该使用return render_to_response('hour.html',{"list": list})
或return render(request, 'hour.html', {"list": list})
第二个render
需要from django.shortcuts import render
答案 1 :(得分:2)
list
是一个python内置序列类型,您应该避免为变量名使用通用名称以避免冲突。您可以阅读有关Python内置类型here的更多信息。
然而,对于这个,你只需要传递上下文:
return render_to_response('hour.html', {"list": list})