class ActiveRecord::Validations::UniquenessValidator

Public Class Methods

new(options) click to toggle source
# File lib/active_record/validations/uniqueness_validator.rb, line 8
def initialize(options)
  if options[:via].present? && !(options[:via] == :db)
    raise ArgumentError, "the :via option only accepts :db"
  end
  old_initialize(options)
end
Also aliased as: old_initialize

Public Instance Methods

old_initialize(options)
Alias for: new
old_validate_each(record, attribute, value)
Alias for: validate_each
validate_each(record, attribute, value) click to toggle source
# File lib/active_record/validations/uniqueness_validator.rb, line 15
def validate_each(record, attribute, value)
  error_options =
    options.
    merge(:value => value).
    except(:case_sensitive, :scope, :conditions)

  ActiveRecordUniquenessViaDb::Builder.call(
    record,
    attribute,
    !options[:via],
    error_options,
  ) { old_validate_each(record, attribute, value) }
end
Also aliased as: old_validate_each