Sha256: cd9257fddca06bc22021ffae2c9be9be1c517bbdca2c7c4648e2f8918289694f
Contents?: true
Size: 750 Bytes
Versions: 9
Compression:
Stored size: 750 Bytes
Contents
module Validatable class ValidatesLengthOf < ValidationBase #:nodoc: attr_accessor :minimum, :maximum, :is, :in def message(instance) super || "is invalid" end def valid?(instance) valid = true value = instance.send(self.attribute) if value.nil? return true if allow_nil value = '' end if !value or (value.respond_to?(:empty?) and value.empty?) return true if allow_blank value = '' end valid &&= value.length <= maximum unless maximum.nil? valid &&= value.length >= minimum unless minimum.nil? valid &&= value.length == is unless is.nil? valid &&= self.in.include?(value.length) unless self.in.nil? valid end end end
Version data entries
9 entries across 9 versions & 1 rubygems