Ground Sunlight

Windowsで作る - PHPプログラミングの開発環境

ユーザ用ツール

サイト用ツール


apricot:usage:ja:validation

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
apricot:usage:ja:validation [2020/08/28 09:04]
y2sunlight [バリデーションの使用例]
apricot:usage:ja:validation [2020/09/03 13:46] (現在)
y2sunlight [Apricot バリデーション]
行 17: 行 17:
   * Apricot バリデーション   * Apricot バリデーション
   * [[apricot:usage:ja:provider|Apricot サービスプロバイダー]]   * [[apricot:usage:ja:provider|Apricot サービスプロバイダー]]
 +  * [[apricot:usage:ja:authentication|Apricot ユーザ認証]]
   * [[apricot:usage:ja:utility|Apricot ユーティリティ]]   * [[apricot:usage:ja:utility|Apricot ユーティリティ]]
  
行 267: 行 268:
 この例では、Input::all() で入力変数を取得した後に、それを使って ''Validator'' のインスタンスを生成します。 この例では、Input::all() で入力変数を取得した後に、それを使って ''Validator'' のインスタンスを生成します。
  
-バリデーションルールの適用には、''rule()'' メソッドを使います。''rule()'' メソッドに渡す第1引数はルール名、第2引数は入力変数変数名、第3引数以降はオプションでルールによって異なります。各バリデーションルールについては[[#バリデーションルール|以下]]を参照して下さい。+=== バリデーションルールの適用 ===
  
-''labels()'' メソッドを使うと[[エラーメッジ]]で使用される入力変数にラベを付けるとがます。+バリデーションルールの適用には、''rule()'' メソッドを使います。''rule()'' ドに渡す第1引数はルル名、第2引数は入力変数変数名、第3引数以降はオプションでールによって異なります。の例は、以下のバリデーションルールを使用しています。
  
-フォムデタのラベ配列を取得+  * ''required'' --- 必須入力 
 +  * ''alphaNum'' --- 半角英数入力 
 +  * ''unique'' --- ユニク制約 
 +  * ''ascii'' --- 半角入力 
 +  * ''equals'' --- 確認入力 
 +  * ''email'' --- メールアドレス
  
 +この他の使用できるルールについては、Valitronの[[https://github.com/vlucas/valitron/blob/master/README.md|README]]の ''Built-in Validation Rules'' の項を参照して下さい。但し、''unique''ルールはApricotの[[#uniqueルール|カスタムルール]]です。
  
 +=== 入力変数のラベリング ===
  
-エラー発生時のメッセージは「accountを入力してください」なります。「account」を「ユーザアカウント」のようなラベルに変更したい場合は、''labels()''ッドを使用してようにします。+''labels()'' メソッドを使うと[[#エラーメッセージ]]で使用される入力変数ラベルを付けることができます。''labels()'' メソッドに渡す引数は、変数名とラベルの連想配列です。この連想配列を作成するのに ''inputLabels()'' ボイラープレートを使用すると便利です。''inputLabels('messages.user.create')'' の引数には、言語メッセージのット表記キー指定します。以下はこの例で使用している言語ファイル内容です。
  
 +{{fa>folder-open-o}} ** /your-project/asetts/lang/ja **
 +<code php messages.php>
 +<?php
 +return [
 +    'user'=>[
 +        'create'=>[
 +            'account'=>'アカウント',
 +            'password'=>'パスワード',
 +            'password_confirmation'=>'パスワード(確認)',
 +            'email'=>'メールアドレス',
 +        ],
 +    ],
 +];
 +</code>
  
-inputLabels()ボプレート +言語ファル及び言語メッセジについては、[[apricot:usage:ja:frontend#多言語化]]を参照して下さい。
  
 +=== バリデーションの実行 ===
  
 バリデーションの実行には、''validate()'' メソッドを使用します。バリデーションが失敗した時、''errors()'' メソッドでバリデーションエラーを取得し、それを withErrors() を使って [[apricot:usage:ja:validation#validatorerrorbagクラス|エラーバッグ]]としてフラッシュ変数に保存します。そして、redirect()で前画面にリダイレクトするレスポンスオブジェクトを生成しそれを返します。 バリデーションの実行には、''validate()'' メソッドを使用します。バリデーションが失敗した時、''errors()'' メソッドでバリデーションエラーを取得し、それを withErrors() を使って [[apricot:usage:ja:validation#validatorerrorbagクラス|エラーバッグ]]としてフラッシュ変数に保存します。そして、redirect()で前画面にリダイレクトするレスポンスオブジェクトを生成しそれを返します。
- 
-この例では、以下のバリデーションルールを使用しています。 
- 
-=== バリデーションルール === 
- 
-  * ''required'' --- 必須入力 
-  * ''alphaNum'' --- 半角英数入力 
-  * ''unique'' --- ユニーク制約 
-  * ''ascii'' --- 半角入力 
-  * ''equals'' --- 確認入力 
-  * ''email'' --- メールアドレス 
- 
-この他の使用できるルールについては、Valitronの[[https://github.com/vlucas/valitron/blob/master/README.md|README]]の ''Built-in Validation Rules'' の項を参照して下さい。但し、''unique''ルールはApricotの[[#uniqueルール|カスタムルール]]です。 
  
 \\ \\
  
apricot/usage/ja/validation.1598573087.txt.gz · 最終更新: 2020/08/28 09:04 by y2sunlight