如何重定向到另一个应用程序中的视图仍然传递参数(Django)

时间:2012-04-27 00:45:11

标签: python django url redirect view

有人提出了另一个像这样的问题,但我不喜欢答案(实际上它并没有真正回答这个问题):Can any one explain how can i pass arg or kwargs from redirect to another view?

我有一个视图,需要重定向到另一个视图(在另一个应用程序中)并仍然发送一个参数。目前我有:

return redirect('/projects/', login_error=error)

哪个不起作用(重定向发生但参数不通过)。是否可以使用redirect()执行此操作?文档中没有任何内容。

但是,我也尝试在不使用URL的情况下引用该视图:

return redirect('projects.views.list_all', login_error=error)

但这也不起作用。

1 个答案:

答案 0 :(得分:1)

redirect返回HTTP重定向到提供的URL - 也就是说,浏览器收到一个  30x响应并发起新请求。

要保留两个请求之间的状态,您需要设置会话变量(根据其他答案)或提供查询参数,例如:

return redirect('/projects/?login_error=error')

然后,您需要在另一个视图中处理传入的request.GET参数。