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.