登录后重定向时设计'user_path'错误

时间:2013-07-21 10:26:48

标签: ruby-on-rails ruby-on-rails-3 devise ruby-on-rails-3.2

我在https://coderwall.com/p/djgkag的设计中使用了这个代码块,以便在成功登录后返回他们来自的用户:

def after_sign_in_path_for(resource_or_scope)
  session.fetch 'user_return_to', user_path
end

但是我收到的错误是:

  

SessionsController中的NameError #create   未定义的局部变量或#

的方法`user_path'

我如何定义user_path?或者我将如何更换它?我已经开了rake路线了,确实没有。

2 个答案:

答案 0 :(得分:0)

您可以尝试执行以下操作:

def after_update_path_for(resource)
  session[:return_to] ||= request.referer
end

然后,您可以通过执行redirect_to session[:return_to]在控制器中调用此方法。如果这不起作用,请查看How To: Redirect back to current page after sign in, sign out, sign up, update。哪个应该详细说明你的事情。但试试我先建议的方式。

答案 1 :(得分:0)

也许你应该重定向到edit_user_registration_path。

默认情况下,Devise不提供任何profil页面。