Module: TPRecordOptimistic
- Extended by:
- ActiveSupport::Concern
- Includes:
- SQLErrorParse
- Defined in:
- lib/tp_record_optimistic.rb,
lib/tp_record_optimistic/version.rb
Defined Under Namespace
Classes: Engine
Constant Summary collapse
- VERSION =
'0.2.1'
Instance Method Summary collapse
- #save(*args) ⇒ Object (also: #old_save)
- #save!(*args) ⇒ Object (also: #old_save!)
- #save_optimistic(*args) ⇒ Object
- #save_optimistic!(*args) ⇒ Object
Methods included from SQLErrorParse
Instance Method Details
#save(*args) ⇒ Object Also known as: old_save
20 21 22 |
# File 'lib/tp_record_optimistic.rb', line 20 def save(*args) super(*args) end |
#save!(*args) ⇒ Object Also known as: old_save!
35 36 37 |
# File 'lib/tp_record_optimistic.rb', line 35 def save!(*args) super(*args) end |
#save_optimistic(*args) ⇒ Object
26 27 28 29 30 31 32 33 |
# File 'lib/tp_record_optimistic.rb', line 26 def save_optimistic(*args) old_save(*args) rescue ActiveRecord::RecordNotUnique => e unique_errors(e.to_s).each do |field| errors.add(field, :Unique, message: "UNIQUE constraint failed #{field}") end return false end |
#save_optimistic!(*args) ⇒ Object
41 42 43 44 45 46 |
# File 'lib/tp_record_optimistic.rb', line 41 def save_optimistic!(*args) old_save!(*args) rescue ActiveRecord::RecordNotUnique => e errors.add('all', e.to_s) raise ActiveRecord::RecordInvalid, self end |