| Module | DataMapper::Validate::AutoValidate |
| In: |
lib/dm-validations/auto_validate.rb
|
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