表示保存状态的activerecord模型的属性?

时间:2012-03-27 06:18:45

标签: ruby-on-rails activerecord

我需要知道模型是否处于保存状态(在before_validate和after_save之间)。

class ModelA < ActiveRecord::Base
  before_save: do_before

  def do_before
    modelb.create(:attr => 123, :ref => self)
  end
end

class ModelB < ActiveRecord::Base
  before_create: do_before

  def do_before
    self.ref.my_attr = 321
    self.ref.save! unless self.ref.is_saving?
  end
end

我需要“is_saving?”我项目中每个模型实例的属性。实现它的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您是否可以使用ActiveRecord的:before_save回调在:after_save:around_save之间设置实例变量,然后产生保存?无论如何,这个问题对我来说不太清楚。 is_saving?方法的目的是什么?