如何在ruby on rails上提交后将注册页面重定向到哪里?

Not*_*Dan 2 security ruby-on-rails

我有一个ruby on rails app,它有一个注册页面.不同的页面重定向到注册页面,需要在注册完成后设置另一个页面重定向到.做这个的最好方式是什么?我现在正在这样做:

link_to'/ signup?redirect =/blah/page6

...并在注册控制器中获取重定向变量,并使用它来设置后注册页面.我担心这可能会导致一些安全问题,但我不确定.

这是可以接受的还是有更好的方法?

Gar*_*ett 5

我使用这两种方法来帮助解决这个问题application_controller.rb:

def store_location
  session[:return_to] = params[:redirect]
end

def redirect_back_or_default(default)
  redirect_to(session[:return_to] || default)
  session[:return_to] = nil
end
Run Code Online (Sandbox Code Playgroud)

当他们到达注册页面时,只需运行store_location,当它完成并完成时,使用该redirect_back_or_default方法.

(当然根据自己的喜好修改)