Sha256: 4a0ec5b75b827c1e8235fb6f40fc79d7566d48fc08b8d9ad57f351255609efd4

Contents?: true

Size: 423 Bytes

Versions: 12

Compression:

Stored size: 423 Bytes

Contents

module Mongomatic
  module Validatable
    class ValidatesExclusionOf < ValidationBase #:nodoc:
      required_option :within

      def valid?(instance)
        value = instance.send(attribute)
        return true if allow_nil && value.nil?
        return true if allow_blank && value.blank?

        !within.include?(value)
      end

      def message(instance)
        super || "is reserved"
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
mongomatic-0.1.31 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.1.3 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.1.2 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.1.1 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.1.0 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.9 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.8 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.7 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.6 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.5 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.4 lib/mongomatic/validatable/validations/validates_exclusion_of.rb
mongomatic-0.0.3 lib/mongomatic/validatable/validations/validates_exclusion_of.rb