如何告知Devise刚刚注册时将用户路由到一次性欢迎屏幕?
答案 0 :(得分:3)
创建一个新的控制器“RegistrationsController”并自定义适当的方法:
class RegistrationsController < Devise::RegistrationsController
protected
def after_sign_up_path_for(resource)
some_special_page
end
end
如果已注册的帐户尚未处于活动状态,则必须覆盖after_inactive_sign_up_path_for方法。
class RegistrationsController < Devise::RegistrationsController
protected
def after_inactive_sign_up_path_for(resource)
some_special_page
end
end
修改config / routes.rb以使用新控制器
devise_for :users, :controllers => { :registrations => "registrations" }
资料来源:https://github.com/plataformatec/devise/wiki/How-To:-Redirect-after-registration-(sign-up)
答案 1 :(得分:1)
在Application控制器中,添加:
def after_sign_up_path_for(resource)
some_special_page
end
对于大多数与Devise相关的问题,请查看Github wiki
答案 2 :(得分:1)
默认情况下,Devise会将用户转发到:user_root(如果您的模型名称是用户)
所以你可以定义命名路由
get "/welcome" => "welcomes#index", :as => "user_root"