因此,我的应用程序中有自己的注册控制器,它为新注册的用户添加了角色分配
class RegistrationsController < Devise::RegistrationsController
def create
build_resource
resource.role = Role.find_by_name('registered')
if resource.save
if resource.active_for_authentication?
set_flash_message :notice, :signed_up if is_navigational_format?
sign_in(resource_name, resource)
respond_with resource, :location => after_sign_up_path_for(resource)
else
set_flash_message :notice, :"signed_up_but_#{resource.inactive_message}" if is_navigational_format?
expire_session_data_after_sign_in!
respond_with resource, :location => after_inactive_sign_up_path_for(resource)
end
else
clean_up_passwords resource
respond_with resource
end
end
end
有没有更简洁的方法可以为这个方法添加功能?我宁愿不必将设计的代码复制/粘贴到我的方法中,以使他们的逻辑与我的逻辑分开。
我想我可以通过回调在模型级别处理它,但我不确定最佳实践是什么