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 <reneeb@cpan.org>

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)