NAME

   Mojolicious::Plugin::Data::Validate::WithYAML - validate form input
   with Data::Validate::WithYAML

VERSION

   version 0.06

SYNOPSIS

   In your startup method:

     sub startup {
         my $self = shift;

         # more Mojolicious stuff

         $self->plugin(
             'Data::Validate::WithYAML',
             {
                 error_prefix => 'ERROR_',        # optional
                 conf_path    => '/opt/app/conf', # path to the dir where all the .ymls are (optional)
             }
         );
     }

   In your controller:

     sub register {
         my $self = shift;

         # might be (age => 'You are too young', name => 'name is required')
         # or with error_prefix (ERROR_age => 'You are too young', ERROR_name => 'name is required')
         my %errors = $self->validate( 'registration' );

         if ( %errors ) {
            $self->stash( %errors );
            $self->render;
            return;
         }

         # create new user
     }

   Your registration.yml

     ---
     age:
       type: required
       message: You are too young
       min: 18
     name:
       type: required
       message: name is required
     password:
       type: required
       plugin: PasswordPolicy
     website:
       type: optional
       plugin: URL

HELPERS

validate

       my %errors = $controller->validate( $yaml_name );

   Validates the parameters. Optional parameter is $yaml_name. If
   $yaml_name is ommitted, the subroutine name (e.g. "register") is used.

AUTHOR

   Renee Baecker <[email protected]>

COPYRIGHT AND LICENSE

   This software is Copyright (c) 2013 by Renee Baecker.

   This is free software, licensed under:

     The Artistic License 2.0 (GPL Compatible)