Module: DataMapper::Validate::ValidatesWithBlock

Module | DataMapper::Validate::ValidatesWithBlock
In: | lib/dm-validations/validators/block_validator.rb

@author teamon @since 0.9

### Methods

validates_with_block

### Public Instance methods

validates_with_block(*fields, &block)

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

[Validate]