我是rails和开发小型用户应用程序的新手。在我的应用程序中,我有一个用户模型和一个订阅模型。我希望当用户创建他/她的个人资料并点击提交按钮时,应该同时调用另一个操作,称为订阅,其输入用户的数据,例如profile_id,subscription_id,plan_id并生成原始状态,相同的订阅表。我正在使用'AASM'进行国家管理。我知道如何使用控制台在订阅表中插入值,这很好。但是,我想在用户注册新配置文件后立即创建新订阅。我的意思是,如何在单个事件中调用两个create方法。
答案 0 :(得分:0)
我没有清楚地说清楚,但我想after_create
就是你所需要的
(假设user :has_one => :profile
和profile has_many => :subscriptions
)
在profile
模型中
after_create :subscribe!
attr_accessor :plan_id, :subscription_id
def subscribe!
self.subscriptions << Subscription.new(:plan_id => plan_id, :subscription_id => subscription_id)
self.save
end