Module: WellFormed::Transactional::ClassMethods
- Defined in:
- lib/well_formed/transactional.rb
Instance Method Summary collapse
Instance Method Details
#after_save_commit(*args, &block) ⇒ Object
13 14 15 |
# File 'lib/well_formed/transactional.rb', line 13 def after_save_commit(*args, &block) set_callback(:save_commit, :after, *args, &block) end |
#save_within_transaction ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/well_formed/transactional.rb', line 17 def save_within_transaction set_callback(:save, :around) do |form, block| saved = false form.resource.class.transaction do catch(:abort) do block.call saved = true end raise ActiveRecord::Rollback unless saved end throw(:abort) unless saved end end |