Chisel > Catalyst-Controller-Validation-DFV-0.0.7 > Catalyst::Controller::Validation::DFV

Download:
Catalyst-Controller-Validation-DFV-0.0.7.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Module Version: 0.0.7   Source   Latest Release: Catalyst-Controller-Validation-DFV-0.0.8

NAME ^

Catalyst::Controller::Validation::DFV - Form validation and refilling

VERSION ^

version 0.0.7

SYNOPSIS ^

Form Validation

    use base 'Catalyst::Controller::Validation::DFV';
    use Data::FormValidator::Constraints qw(:closures);

    # define a DFV profile
    my $dfv_profile = {
        required => [qw<
            email_address
            phone_home
            phone_mobile
        >],

        constraint_methods => {
            email_address   => email(),
            phone_home      => american_phone(),
            phone_mobile    => american_phone(),
        },
    };

    # check the form for errors
    $c->forward('form_check', [$dfv_profile]);

    # perform custom/complex checking and
    # add to form validation failures
    if (not is_complex_test_ok()) {
        $c->forward(
            'add_form_invalid',
            [ $error_key, $error_constraint_name ]
        );
    }

Form Refilling

    package MyApp::Controller::Root;

    # ...

    use base 'Catalyst::Controller::Validation::DFV';

    # ...

    sub render : ActionClass('RenderView') {
        # ...
    }

    sub end : Private {
        my ($self, $c) = @_;

        # render the page
        $c->forward('render');

        # fill in any forms
        $c->forward('refill_form');
    }

DESCRIPTION ^

Form-validation using a Catalyst controller and Data::FormValidator

EXAMPLES ^

There are Template::Toolkit file examples in the examples/ directory of this distribution.

AUTHOR ^

Chisel <chisel@chizography.net>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2012 by Chisel Wright.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: