保存每个依赖类的最佳方法是什么?

时间:2012-08-08 13:17:45

标签: ruby-on-rails activerecord model associations

我有2个Ruby on Rails模型类A和B是依赖的,我想在保存另一个时保存一个。

我目前的解决方案是使用像How to avoid ActiveRecord model double saving?这样的临时属性 但是有更好的方法吗?

class A < ActiveRecord::Base  
  has_many :b

  attr_writer :save_b_values

  def save_b_values
    return @save_b_values if defined? @save_b_values
    true
  end

  before_save do
    save_b_values = false

    if save_b_values
      b.each do |bi|
        bi.save!
      end
    end
  end

  after_save do
    save_b_values = true
  end
end

class B < ActiveRecord::Base
  belongs_to :a, autosave: true
end

0 个答案:

没有答案