某些情况我不想执行before_update。请帮我。
案例A:如果我想使用before_update
obj = Object.find(id)
obj.save
但是案例B我不想使用before_update
obj = Object.find(id)
obj.save # in case I want used before_update
答案 0 :(得分:3)
方法#save
接受哈希选项。要跳过验证:
obj.save(:validate => false)
这是使用公共API跳过验证的文档化方法。不要尝试使用send调用内部方法,否则您的应用程序将来可能无法正常工作。
答案 1 :(得分:0)
update_without_callbacks和create_without_callbacks是私有方法。这些方法不会调用任何回调。
obj = Object.find(id)
obj.send(:update_without_callbacks)
obj = Object.new(:name => 'foo')
obj.send(:create_without_callbacks)