Sha256: a56e7f9544f98a792d1ad4c2465beb3d143525bc15713e3826e5ca3259dfb314
Contents?: true
Size: 512 Bytes
Versions: 2
Compression:
Stored size: 512 Bytes
Contents
require 'active_model_validators_ex/array_validator_base' class ArrayInclusionValidator < ArrayValidatorBase def initialize(options) unless options[:in].is_a?(Array) or options[:in].is_a?(Range) raise ArgumentError, 'value for in must be either a Range or Array' end super(options) end def custom_validations(record, attribute, value) unless value.all? { |val| options[:in].include?(val) } record.errors.add(attribute, :array_inclusion, options) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
active_model_validators_ex-1.0.0 | lib/active_model_validators_ex/array_inclusion_validator.rb |
active_model_validators_ex-0.3.2 | lib/active_model_validators_ex/array_inclusion_validator.rb |