我有一个人们搜索项目的应用程序。如果找到该项目,则会向它们显示由URL中的参数和联系表单找到的相关项目列表。在提交表单后,我遇到了将访问者重定向到同一页面(使用URL参数)的问题。
有什么想法吗?
答案 0 :(得分:0)
尝试redirect_to(:back)
。
答案 1 :(得分:0)
您可以使用redirect_to :back
,但请注意,这取决于所设置的Referer
标头,如果由于某种原因,您将遇到错误。
为了解决这个问题,我在我的应用程序中使用了类似下面的方法(我把它放到ApplicationController
中,所以它可以在我的所有控制器中访问):
def redirect_back_or_to(options = {})
if request.env["HTTP_REFERER"].blank?
redirect_to options
else
redirect_to :back
end
end
如果设置了Referer
标头,则会重定向,否则将像普通redirect_to一样工作(因此您可以指定默认情况下重定向到的位置)。