Class: ActiveModel::Validations::UniqueItemAttributesValidator

Inherits:
EachValidator
  • Object
show all
Defined in:
lib/active_model/validations/unique_item_attributes_validator.rb

Instance Method Summary collapse

Instance Method Details

#validate_each(record, _attribute, value) ⇒ Object

Raises:

  • (ArgumentError)


6
7
8
9
10
# File 'lib/active_model/validations/unique_item_attributes_validator.rb', line 6

def validate_each(record, _attribute, value)
  raise ArgumentError, ":#{value} must be an enumerable" unless value.is_a? Enumerable
  collection = remove_items_marked_for_destruction(value)
  options[:in].each { |item_attribute| validate_unique_item_attribute(record, collection, item_attribute) }
end