同様に、freeze
オブジェクト値を更新する機能を (ある程度) 無効にします。直接 ( ) と間接 ( )User.disable_persistence
の両方で呼び出された、そのオブジェクトと関連オブジェクトの作成/保存/更新機能を無効にするメソッドを構築するにはどうすればよいでしょうか。User.save
User.children << child
次のような宝石、または簡単な方法はありますか?
class User < ...
def disable_persistence
# magic here (nullify save, and other methods, prevent callbacks etc.)
class_eval :before_save do
errors.add(:base, "Persistence has been disabled for this object")
end
end
end