在清关用户创建时创建依赖记录
Create dependant record on Clearance user creation
我只是想在用户注册时创建另一条记录。我认为以下是 Clearance 触及我的应用程序的唯一地方,不计算观看次数。
class ApplicationController < ActionController::Base
include Clearance::Controller
before_action :require_login
.
.
.
end
class User < ActiveRecord::Base
include Clearance::User
has_many :received_messages, class_name: 'Message', foreign_key: :receiver_id
has_one :privilege
end
您需要 after_create
(或者 before_create
,或其他一些挂钩,具体取决于您的语义),它由 Rails 独立于 Clearance 提供。它允许您在创建 User
记录后向 运行 声明一个方法,该方法可以创建您希望存在的其他对象。
class User < ActiveRecord::Base
after_create :create_other_thing
private
def create_other_thing
OtherThing.create(other_thing_attributes)
end
end
请注意 after_create
运行 与您的 User
创建在同一事务中,因此如果在 OtherThing.create
期间出现异常,它和 User
将被回滚。
查看 Active Record Callbacks 以了解有关 ActiveRecord 生命周期挂钩如何工作的完整详细信息。
我只是想在用户注册时创建另一条记录。我认为以下是 Clearance 触及我的应用程序的唯一地方,不计算观看次数。
class ApplicationController < ActionController::Base
include Clearance::Controller
before_action :require_login
.
.
.
end
class User < ActiveRecord::Base
include Clearance::User
has_many :received_messages, class_name: 'Message', foreign_key: :receiver_id
has_one :privilege
end
您需要 after_create
(或者 before_create
,或其他一些挂钩,具体取决于您的语义),它由 Rails 独立于 Clearance 提供。它允许您在创建 User
记录后向 运行 声明一个方法,该方法可以创建您希望存在的其他对象。
class User < ActiveRecord::Base
after_create :create_other_thing
private
def create_other_thing
OtherThing.create(other_thing_attributes)
end
end
请注意 after_create
运行 与您的 User
创建在同一事务中,因此如果在 OtherThing.create
期间出现异常,它和 User
将被回滚。
查看 Active Record Callbacks 以了解有关 ActiveRecord 生命周期挂钩如何工作的完整详细信息。