如何将Python列表添加到Django HTTP响应中

-2 投票
1 回答
1737 浏览
提问于 2025-04-28 09:03

我正在尝试在一个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 %}

希望这对你有帮助,祝好运 :)

撰写回答