Oli*_*ier 9 callback devise ruby-on-rails-3
如何添加回调以为注册用户创建帐户.
设计文件(registrations_controller.rb)在控制器/设计下我的用户模型有has_many:accounts关系(并且帐户模型有belongs_to:user)
首先我不知道在哪里添加回调(什么文件?)
那么,如何使用注册用户的正确user_id自动创建一个新帐户?
提前致谢.
Nav*_*eed 18
您可以覆盖设备的注册控制器,添加回调以使用过滤器创建帐户.请记住将文件命名为registrations_controller.rb
class RegistrationsController < Devise::RegistrationsController
after_filter :add_account
protected
def add_account
if resource.persisted? # user is created successfuly
resource.accounts.create(attributes_for_account)
end
end
end
Run Code Online (Sandbox Code Playgroud)
然后在您的routes.rb告诉设计使用覆盖控制器进行注册
devise_for :users, controllers: { registrations: 'registrations'}
Run Code Online (Sandbox Code Playgroud)
这是谷歌群组上的一个帖子,可以回答您的问题:
http://groups.google.com/group/plataformatec-devise/browse_thread/thread/6fc2df8d71f8b2f0
基本上,它建议仅向您的用户模型添加标准的 Rails“after_create”方法来运行您需要的代码。
| 归档时间: |
|
| 查看次数: |
8705 次 |
| 最近记录: |