保存模型时如何创建其他类的新实例

时间:2010-03-29 19:15:55

标签: ruby-on-rails activerecord

我有一个A类,当它第一次被实例化并保存或者被修改时,它将创建一个B类实例并保存它

我希望他们在同一个交易中,我希望它在模型中处理而不是控制器。

我知道如何在'transaction do'块的上下文中执行此操作,但如何在模型中执行此操作?

由于

2 个答案:

答案 0 :(得分:1)

after_save回调中执行此操作,该回调与原始保存处于同一事务中。请参阅Rails guides

答案 1 :(得分:0)

使用模型回调,例如before_save或before_create等

http://apidock.com/rails/ActiveRecord/Callbacks