Module | DataMapper::Validations::ValidatesWithBlock |
In: |
lib/dm-validations/validators/block_validator.rb
|
@author teamon @since 0.9
Validate using the given block. The block given needs to return: [result::<Boolean>, Error Message::<String>]
@example [Usage]
require 'dm-validations' class Page include DataMapper::Resource property :zip_code, String validates_with_block do if @zip_code == "94301" true else [false, "You're in the wrong zip code"] end end # A call to valid? will return false and # populate the object's errors with "You're in the # wrong zip code" unless zip_code == "94301" # You can also specify field: validates_with_block :zip_code do if @zip_code == "94301" true else [false, "You're in the wrong zip code"] end end # it will add returned error message to :zip_code field