Rails 如何修改 Devise 中的 Action Controller?

ziu · 2014年04月06日 · 最后由 ziu 回复于 2014年04月06日 · 2571 次阅读

使用 Devise 生成了 User model。因为是一个电子银行网站,想在接受到外部网站的付款请求后,将现有用户登出 (如果有登录的话),然后跳到登录界面要求登录,但 Devise 默认登录完后跳到 root 界面,如何修改?不想直接修改 routes 里的 root,这样的话如果没有外部请求 (比如单单的登陆查看余额) 也会跳转,应该会出错。有如下帮助函数:

def redirect_back_or(default)
  debugger
  redirect_to(session[:return_to]||default)
  session.delete(:return_to)
end

def store_location
  session[:return_to]=request.fullpath if request.get?
end

谢谢。

但 Devise 默认登录完后跳到 root 界面

既然有默认,我想应该有个叫做 redirect_url 之类的参数可以传递。。

#1 楼 @pynix 嗯,有一个差不多的after_sign_in_path_for方法。覆写了就好了。 #2 楼 @miclle 以前没注意到这个 wiki 界面 谢谢两位

需要 登录 后方可回复, 如果你还没有账号请 注册新账号