Module: DatabaseValidations::DatabaseUniquenessValidator

Extended by:
ActiveSupport::Concern
Defined in:
lib/database_validations/uniqueness_validator.rb

Instance Method Summary collapse

Instance Method Details

#save(options = {}) ⇒ Object



21
22
23
24
25
26
# File 'lib/database_validations/uniqueness_validator.rb', line 21

def save(options = {})
  ActiveRecord::Base.connection.transaction(requires_new: true) { super }
rescue ActiveRecord::RecordNotUnique => e
  DatabaseValidations::Helpers.handle_unique_error(self, e)
  false
end

#save!(options = {}) ⇒ Object



28
29
30
31
32
33
# File 'lib/database_validations/uniqueness_validator.rb', line 28

def save!(options = {})
  ActiveRecord::Base.connection.transaction(requires_new: true) { super }
rescue ActiveRecord::RecordNotUnique => e
  DatabaseValidations::Helpers.handle_unique_error(self, e)
  raise ActiveRecord::RecordInvalid, self
end