khanh
khanh

Reputation: 4606

ignore before_update when save

some case I don't want execute before_update. please help me.

case A: in case I want used before_update

obj = Object.find(id)
obj.save

but case B I don't want used before_update

obj = Object.find(id)
obj.save # in case I want used before_update

Upvotes: 2

Views: 1387

Answers (2)

Simone Carletti
Simone Carletti

Reputation: 176402

The method #save accepts a Hash of option. To skip validations:

obj.save(:validate => false)

This is the documented way to skip validations using the public API. Don't try to use send to call internal methods or your application might not work in the future.

Upvotes: 3

krunal shah
krunal shah

Reputation: 16339

update_without_callbacks and create_without_callbacks are private methods. These methods will not call any callbacks.

obj = Object.find(id)
obj.send(:update_without_callbacks)

obj = Object.new(:name => 'foo')
obj.send(:create_without_callbacks)

Upvotes: 0

Related Questions