如何将Python列表添加到Django HTTP响应中
我正在尝试在一个Django网站上运行Python代码,目标是让Python函数返回的列表在响应的页面上显示出来:
在我的views.py文件中:
def home(request):
form = SignUpForm(request.POST or None)
if form.is_valid():
save_it= form.save(commit=False)
save_it.save()
messages.success(request,"Working, please wait........")
answer = crawler("http://www.walla.co.il",5,5)
return HttpResponseRedirect('/done/')
return render_to_response("signup.html",locals(),context_instance=RequestContext(request))
def done(request):
return render_to_response("done.html",locals(),context_instance=RequestContext(request))
我的函数是在craw.py文件中定义的
我明白你写的内容了,这对我有帮助,但我该怎么重定向呢?还有,我有一个全局变量,contex
:
contex = { 'list_var' : list_var }
#context = { 'list_var' : list_var }
#return render(request, 'done.html', context)
return HttpResponseRedirect('/done/')
#return HttpResponseRedirect('/done/')
return render_to_response("signup.html",locals(),context_instance=RequestContext(request))
def done(request):
global contex
return render_to_response("done.html",locals(),contex)
1 个回答
0
如果我理解得没错,你需要把一个列表发送到你想加载的模板中,然后在那个模板里逐个处理这个列表。
我个人使用的方式是用一个叫做 render 的快捷方式,具体可以在这里找到。
比如说:
list_var = [1,2,3]
context = { 'list_var' : list_var }
return render(request, 'template.html', context)
然后在模板中像这样处理发送过来的数据:
{% for x in list_var %}
{{ x }}
{% endfor %}
希望这对你有帮助,祝好运 :)