Yasuhiro Horiuchi > FormValidator-Simple-ProfileManager-YAML > FormValidator::Simple::ProfileManager::YAML

Download:
FormValidator-Simple-ProfileManager-YAML-0.06.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.06   Source  

NAME ^

FormValidator::Simple::ProfileManager::YAML - YAML profile manager for FormValidator::Simple

SYNOPSIS ^

  use FormValidator::Simple;
  use FormValidator::Simple::ProfileManager::YAML;

  my $manager = FormValidator::Simple::ProfileManager::YAML->new('/path/to/profile.yml');

  # get profile assosiated with @groups
  my $profile = $manager->get_profile(@groups);

  # pass obtained profile to FormValidator::Simple
  my $result = FormValidator::Simple->check($q, $profile);


  # create new manager associated with group
  my $manager2 = $manager->extract(@groups);


  # you can add profile to @groups
  $manager->add_profile(
      email => [EMAIL],[NOT_BLANK],
      @groups,
  );

  # and also you can remove profile from @groups
  $manager->remove_profile(email, @groups);


  # sample yaml profile

  group1 :
      - name
      - [ [NOT_BLANK] ]
      - email
      - [ [NOT_BLANK], [EMAIL_LOOSE] ]
      - tel
      - [ [NOT_BLANK], [NUMBER_PHONE_JP] ]
      - content
      - [ [NOT_BLANK] ]

  group2 :
     subgroup1 :
         - userid
         - [ [NOT_BLANK]]
         - password
         - [ [NOT_BLANK]]
         - name
         - [ [NOT_BLANK] ]
         - email
         - [ [NOT_BLANK], [EMAIL_LOOSE] ]

     subgroup2 :
         - tel
         - [ [NOT_BLANK], [NUMBER_PHONE_JP] ]
         - { zip : [zip1, zip2] }
         - [ [ZIP_JP] ]
         - address
         - [ [NOT_BLANK] ]


  # get profile 'group1'
  $profile = $manager->get_profile('group1');

  # get profile 'subgroup2'
  $profile = $manager->get_profile( 'group2', 'subgroup2' );
  # or you can use dot syntax.
  $profile = $manager->get_profile( 'group2.subgroup2' );


  # Default YAML loader is 'YAML'.
  # If you want to use 'YAML::Syck' as loader, pass 'loader' to constructor as below.
  my $manager = FormValidator::Simple::ProfileManager::YAML->new(
      '/path/to/profile.yml',
      {
          loader => 'YAML::Syck',
      }
  );

DESCRIPTION ^

FormValidator::Simple::ProfileManager::YAML is YAML profile manager for FormValidator::Simple.

METHODS ^

new
  $manager = FormValidator::Simple::ProfileManager::YAML->new('/path/to/profile.yml');
  $manager = FormValidator::Simple::ProfileManager::YAML->new('/path/to/profile.yml', {loader=>'YAML::Syck'});
get_profile
  $profile = $manager->get_profile();
  $profile = $manager->get_profile('group1');
  $profile = $manager->get_profile('group1', 'subgroup2');
  $profile = $manager->get_profile('group1.subgroup2');
extract
  my $manager2 = $manager->extract(@group);
add_profile
  $manager->add_profile(
      email => [EMAIL],[NOT_BLANK],
      @groups,
  );
remove_profile
  $manager->remove_profile(email, @groups);

AUTHOR ^

Yasuhiro Horiuchi <yasuhiro@hori-uchi.com>

syntax highlighting: