Piece_Right で複数カラムのエラーメッセージを1つにまとめる

20071025_01.PNG

上記のような入力フォームで氏名の姓・名ともに入力値の必須バリデーションを行う場合、それぞれのリクエスト毎に必須確認およびエラーメッセージを設定すると、片方のみ未入力というケースならばよいものの、


  20071025_02.PNG

両方ともに未入力の場合だと、上のような感じに。 これを回避しようとすると、テンプレート側で「どっちもエラーならば片方のみ表示して~」というような分岐文を書いてしまうところです。

ここは、次のようなバリデーションを行うようにします。

- name: lastName
  filter: &Japanese
     - trim
     - JapaneseH2Z
- name: firstName
  filter: *Japanese
- name: name
  required:
    message: 未入力です
  pseudo:
    format: %s%s
    arg:
      - lastName
      - firstName

これで、lastName, firstName のどちらかが未入力だった場合 name カラムもブランクとなり、required ルールにヒットしエラーとなります。あとはテンプレートにて name カラムについてのエラー処理を行えば OK です。もちろん、lastName, firstName の値もそのまま利用できます。

トラックバック(0)

このブログ記事を参照しているブログ一覧: Piece_Right で複数カラムのエラーメッセージを1つにまとめる

このブログ記事に対するトラックバックURL: http://hatotech.org/mt-admin/mt-tb.cgi/700

コメントする

このブログ記事について

このページは、が2007年10月25日 16:57に書いたブログ記事です。

ひとつ前のブログ記事は「ひじき」です。

次のブログ記事は「カボチャ週間」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.01