Class: ArrayInclusionValidator
- Inherits:
-
ArrayValidatorBase
- Object
- ActiveModel::EachValidator
- ArrayValidatorBase
- ArrayInclusionValidator
- Defined in:
- lib/active_model_validators_ex/array_inclusion_validator.rb
Instance Method Summary collapse
- #custom_validations(record, attribute, value) ⇒ Object
-
#initialize(options) ⇒ ArrayInclusionValidator
constructor
A new instance of ArrayInclusionValidator.
Methods inherited from ArrayValidatorBase
Constructor Details
#initialize(options) ⇒ ArrayInclusionValidator
Returns a new instance of ArrayInclusionValidator.
4 5 6 7 8 9 10 11 12 |
# File 'lib/active_model_validators_ex/array_inclusion_validator.rb', line 4 def initialize() unless .key?(:in) && ([:in].is_a?(Array) || [:in].is_a?(Range)) raise 'key in must be present, and value must be either a Range or Array' end super() end |
Instance Method Details
#custom_validations(record, attribute, value) ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/active_model_validators_ex/array_inclusion_validator.rb', line 14 def custom_validations(record, attribute, value) unless value.all? { |val| [:in].include?(val) } record.errors[attribute] << "attribute #{attribute} has be an array composed of values " \ "#{[:in]}" end end |