HttpResponseRedirect 问题
我们在使用HttpResponseRedirect的时候,不能发送一个字典变量吗?
render_to_response('edited/display.html',context_instance=RequestContext(request,{'newlist': newlist}))
//How can the dictionary and the request sent back again
//sumthing like this
return HttpResponseRedirect('edited/display.html',context_instance=RequestContext(request,{'newlist': newlist}))
4 个回答
0
来自文档:
这个构造函数只需要一个参数——也就是你想要重定向到的路径。这个路径可以是一个完整的网址(比如 'http://www.yahoo.com/search/'),也可以是一个没有域名的绝对网址(比如 '/search/')。
2
让我再补充一个答案,除了已有的答案之外:
my_url = reverse("my_app.views.my_path") + "?action_result=124"
return HttpResponseRedirect(my_url)
反向函数是:from django.core.urlresolvers import reverse
4
响应重定向顾名思义,就是把用户的浏览器引导到一个新的网址。所以在HttpResponseRedirect中,除了新的网址,传其他东西是没有意义的。
如果你想传一些数据,以便在新的网址的view
中检查这些数据,可以把它作为网址参数传递,比如:
return HttpResponseRedirect('edited/display.html?msg=I was redirected')