YanoRyuichi.com/
Wiki
Blog
GitHub
Sandbox
開始行:
* FormValidator::Simpleでヴァリデーション [#b6af0ec7]
[[FormValidator-Simple>http://search.cpan.org/perldoc?For...
** 設定 [#z2faef52]
myapp.ymlは以下のようにする。
validator:
plugins:
- Japanese
options:
charset: euc
messages: conf/messages.yml
messages.ymlに「名前は10字以内です」のようなメッセージを...
member:
e_mail:
DEFAULT: メールアドレスが正しくありません。
login_id:
DEFAULT: ログインIDが正しくありません。
LENGTH: ログインIDは10-12文字にする必要があります。
REGEX: ログインIDは半角英数字、ハイフン、アンダー...
password:
DEFAULT: パスワードが正しくありません。
LENGTH: パスワードは10-12文字にする必要があります。
REGEX: パスワードは半角英数字、ハイフン、アンダー...
** アクションクラス [#ra48249b]
$c->form(
login_id => [qw/NOT_BLANK/, ['REGEX', qr/[\w\d-]+/]...
password => [qw/NOT_BLANK/, ['REGEX', qr/[\w\d-]+/]...
name => [qw/NOT_BLANK/],
namekana => [qw/NOT_BLANK HIRAGANA/],
zip => [qw/NOT_BLANK ZIP_JP/],
prefec => [qw/NOT_BLANK/],
tel => [qw/NOT_BLANK/, ['REGEX', qr/[?d-]+/]],
e_mail => [qw/NOT_BLANK EMAIL_LOOSE/],
sex => [qw/NOT_BLANK INT/],
birth => [qw/NOT_BLANK/, ['DATETIME_STRPTIME','%...
);
if ($prefec) {
if (! grep {$prefec eq $_ } @{$c->config->{prefectur...
$c->set_invalid_form(prefec => 'PREFECTURES');
}
}
$c->stash->{template} = 'member/regist.tt2' if $c->form-...
** テンプレート [#n2edb34d]
[% IF Catalyst.form.has_error -%]
<h3>エラー!!</h3>
<ul>
[% FOREACH mesg IN Catalyst.form.messages('member') -%]
<li>[% mesg %]</li>
[% END -%]
</ul>
[% END -%]
** ヴァリデーションプラグインの作成 [#f9805b18]
- ↓ここを見る
- http://blog.nomadscafe.jp/archives/000510.html
- アプリケーションルート直下に適当なディレクトリ(commonと...
** 参考 [#y71fe044]
- ↓ここ見ると分かる。
- http://search.cpan.org/perldoc?Catalyst::Plugin::FormVa...
- ↓それ以外の参考。
- http://search.cpan.org/perldoc?FormValidator::Simple
- http://search.cpan.org/perldoc?FormValidator::Simple::P...
- http://search.cpan.org/perldoc?Data::FormValidator
終了行:
* FormValidator::Simpleでヴァリデーション [#b6af0ec7]
[[FormValidator-Simple>http://search.cpan.org/perldoc?For...
** 設定 [#z2faef52]
myapp.ymlは以下のようにする。
validator:
plugins:
- Japanese
options:
charset: euc
messages: conf/messages.yml
messages.ymlに「名前は10字以内です」のようなメッセージを...
member:
e_mail:
DEFAULT: メールアドレスが正しくありません。
login_id:
DEFAULT: ログインIDが正しくありません。
LENGTH: ログインIDは10-12文字にする必要があります。
REGEX: ログインIDは半角英数字、ハイフン、アンダー...
password:
DEFAULT: パスワードが正しくありません。
LENGTH: パスワードは10-12文字にする必要があります。
REGEX: パスワードは半角英数字、ハイフン、アンダー...
** アクションクラス [#ra48249b]
$c->form(
login_id => [qw/NOT_BLANK/, ['REGEX', qr/[\w\d-]+/]...
password => [qw/NOT_BLANK/, ['REGEX', qr/[\w\d-]+/]...
name => [qw/NOT_BLANK/],
namekana => [qw/NOT_BLANK HIRAGANA/],
zip => [qw/NOT_BLANK ZIP_JP/],
prefec => [qw/NOT_BLANK/],
tel => [qw/NOT_BLANK/, ['REGEX', qr/[?d-]+/]],
e_mail => [qw/NOT_BLANK EMAIL_LOOSE/],
sex => [qw/NOT_BLANK INT/],
birth => [qw/NOT_BLANK/, ['DATETIME_STRPTIME','%...
);
if ($prefec) {
if (! grep {$prefec eq $_ } @{$c->config->{prefectur...
$c->set_invalid_form(prefec => 'PREFECTURES');
}
}
$c->stash->{template} = 'member/regist.tt2' if $c->form-...
** テンプレート [#n2edb34d]
[% IF Catalyst.form.has_error -%]
<h3>エラー!!</h3>
<ul>
[% FOREACH mesg IN Catalyst.form.messages('member') -%]
<li>[% mesg %]</li>
[% END -%]
</ul>
[% END -%]
** ヴァリデーションプラグインの作成 [#f9805b18]
- ↓ここを見る
- http://blog.nomadscafe.jp/archives/000510.html
- アプリケーションルート直下に適当なディレクトリ(commonと...
** 参考 [#y71fe044]
- ↓ここ見ると分かる。
- http://search.cpan.org/perldoc?Catalyst::Plugin::FormVa...
- ↓それ以外の参考。
- http://search.cpan.org/perldoc?FormValidator::Simple
- http://search.cpan.org/perldoc?FormValidator::Simple::P...
- http://search.cpan.org/perldoc?Data::FormValidator
ページ名: