The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

FormValidator::Lite::Constraint::Default - default constraint rules

DESCRIPTION

This module provides default constraint rules for FormValidator::Lite.

CONSTRAINTS

NOT_NULL

The parameter is true value or not.

NOT_BLANK, REQUIRED

Synonym of NOT_NULL.

INT

The parameter looks like a integer? i.e. It matches /^[+\-]?[0-9]+$/?

UINT

The parameter looks like a unsigned integer? i.e. It matches /^[0-9]+$/?

ASCII
    $_ =~ /^[\x21-\x7E]+$/

The parameter is just ASCII?

DUPLICATION
    $validator->check(
        {mails => [qw/mail1 mail2/]} => ['DUPLICATION']
    );

The two parameters have same value?

DUP

Synonym of DUPLICATION.

LENGTH
    $validator->check(
        name     => [[qw/LENGTH 5 20/]],
        password => [[qw/LENGTH 5/]],
    );

Check the length of data. First argument means $minumum value, second argument is $max. $max is optional.

EQUAL
    $validator->check(
        name => [[EQUAL => "foo"]],
    );

Check parameter match the argument or not.

REGEX
    $validator->check(
        name => [[REGEXP => qr/^[0-9]$/]],
    );

Check regexp matches parameter or not.

REGEXP

Synonym of REGEX.

CHOICE
    $validator->check(
        sex => [[CHOICE => qw/male female/]]
    );

The parameter is one of choice or not.

IN

Synonym of CHOICE.

NOT_IN
    $validator->check(
        new_user => [[NOT_IN => \@existing_users]]
    );

The parameter does not belong to the list of values.

MATCH
    use MyApp::Util qw/is_foo/;

    $validator->check(
        foo => [[MATCH => \&is_foo ]],
        bar => [[MATCH => sub { $_[0] eq 'foo' } ]],
    );

Check parameter using callback. Callback takes parameter as first argument, should return true/false.

FILTER
    $validator->check(
        foo => [[FILTER => 'trim'], 'INT'],
        bar => [[FILTER => sub { $_[0] . '@example.com' } ], 'EMAIL'],
    );

FILTER is special constraint. It does not check the value and simply filter. "trim" is only pre-defined. You can also pass a callback. Callback takes parameter as first argument, should return filtered value.