Module DataMapper::Validate::AutoValidate
In: lib/dm-validations/auto_validate.rb

Methods

Public Instance methods

Auto-generate validations for a given property. This will only occur if the option :auto_validation is either true or left undefined.

@details [Triggers]

  Triggers that generate validator creation

  :nullable => false
      Setting the option :nullable to false causes a
      validates_presence_of validator to be automatically created on
      the property

  :size => 20 or :length => 20
      Setting the option :size or :length causes a validates_length_of
      validator to be automatically created on the property. If the
      value is a Integer the validation will set :maximum => value if
      the value is a Range the validation will set :within => value

  :format => :predefined / lambda / Proc
      Setting the :format option causes a validates_format_of
      validator to be automatically created on the property

  :set => ["foo", "bar", "baz"]
      Setting the :set option causes a validates_within
      validator to be automatically created on the property

  Integer type
      Using a Integer type causes a validates_is_number
      validator to be created for the property.  integer_only
      is set to true

  BigDecimal or Float type
      Using a Integer type causes a validates_is_number
      validator to be created for the property.  integer_only
      is set to false, and precision/scale match the property

  Messages

  :messages => {..}
      Setting :messages hash replaces standard error messages
      with custom ones. For instance:
      :messages => {:presence => "Field is required",
                    :format => "Field has invalid format"}
      Hash keys are: :presence, :format, :length, :is_unique,
                     :is_number, :is_primitive

  :message => "Some message"
      It is just shortcut if only one validation option is set

[Validate]