Module: ArrayValidator::SubsetValidator

Defined in:
lib/array_validator/subset_validator.rb

Class Method Summary collapse

Class Method Details

.call(record, attribute, values, options = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
# File 'lib/array_validator/subset_validator.rb', line 3

def self.call(record, attribute, values, options = {})
  return if options[:subset_of].nil?
  unlisted_values = values - options[:subset_of]
  return if unlisted_values.none?

  record.errors[attribute].push(
    I18n.t('subset_of', scope: I18N_SCOPE, invalid_values: unlisted_values.join(', '))
  )
end