在我的rails应用程序中我想将用户重定向到类似于http://localhost:3000/en/profiles/first_name-last_name/edit
的路径,因为我使用的是friendly_id gem,这是我的个人资料模型
extend FriendlyId
friendly_id :full_name, use: :slugged
def full_name
(self.first_name + " " + self.last_name).titleize
end
我创建了一个注册控制器来重定向用户,这是我的控制器
class RegistrationsController<设计:: RegistrationsController 保护
def after_sign_up_path_for(resource)
"/profiles/#{current_user.profile.id}/edit" if current_user
end
端
这是我的路线
scope "(:locale)", locale: /en|fr/ do
devise_for :users, :controllers => { :registrations => "registrations" }
end
但注册后我总是被重定向到root_path而不是http://localhost:3000/en/profiles/first_name-last_name/edit
答案 0 :(得分:0)
将注册控制器更改为
def after_sign_up_path_for(resource)
edit_profile_path(current_user.profile) if current_user
end