4

我在我的应用程序控制器中覆盖了 after_sign_in_path_for,如下所示:

application_controller.rb

def after_sign_in_path_for resource
  case resource
    when User
        blah
    when Admin
        blah
  end
end

这在用户通过登录页面登录时有效。但是当用户通过Devise 的Token Authenticatable模块after_sign_in_path_for登录时,方法根本不会被调用。用户被带到. 我怎样才能改变这个? root_path

我正在使用 Rails 3.2.0、ruby 1.9.3p194 和 Devise 2.1.2。

4

1 回答 1

0

我建议您看一下Devise 自己的 ConfirmationsController,它在我看来就像它调用 after_sign_in_path_for ,并且资源将是我假设的用户。但可能需要用您自己的控制器覆盖该控制器,因此您可以在确定之前记录资源。

于 2013-01-02T06:29:45.600 回答