このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン 最新のリビジョン 両方とも次のリビジョン | ||
apricot:app:validation [2020/05/15 10:18] y2sunlight [テスト実行] |
apricot:app:validation [2020/05/25 11:25] y2sunlight [インターセプター] |
||
---|---|---|---|
行 17: | 行 17: | ||
* Apricot バリデーション | * Apricot バリデーション | ||
* [[apricot: | * [[apricot: | ||
- | * [[apricot: | + | * [[apricot: |
ユーザ登録画面にバリデーションの機能を追加します。 | ユーザ登録画面にバリデーションの機能を追加します。 | ||
行 189: | 行 189: | ||
\\ | \\ | ||
- | ===== ValidatorErrorBagクラス ===== | + | ===== エラーバッグ |
- | コアの [[apricot: | + | ==== ValidatorErrorBagクラス ==== |
+ | |||
+ | コアの [[apricot: | ||
{{fa> | {{fa> | ||
行 222: | 行 224: | ||
* ''' | * ''' | ||
* 使用できるメソッドなど、機能的にはErrorBagクラスと全く同じです。 | * 使用できるメソッドなど、機能的にはErrorBagクラスと全く同じです。 | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== クラスエイリアス ==== | ||
+ | |||
+ | ValidatorErrorBagクラスを[[apricot: | ||
+ | |||
+ | {{fa> | ||
+ | <code php aliases.setup.php> | ||
+ | <?php | ||
+ | // | ||
+ | // ビューテンプレートで使うクラスエイリアスを登録 | ||
+ | // | ||
+ | return function(): | ||
+ | { | ||
+ | $aliases = | ||
+ | [ | ||
+ | /* Core */ | ||
+ | ... | ||
+ | |||
+ | /* App */ | ||
+ | ' | ||
+ | ' | ||
+ | ]; | ||
+ | |||
+ | ... | ||
+ | |||
+ | return true; // Must return true on success | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | * ViewHelper の下に ValidatorErrorBag のエイリアスを追加します。 | ||
\\ | \\ | ||
行 229: | 行 263: | ||
Apricotではバリデーションをインターセプターの中に実装します。以下にインターセプターの作成方法について説明します。 | Apricotではバリデーションをインターセプターの中に実装します。以下にインターセプターの作成方法について説明します。 | ||
- | >'' | + | >'' |
\\ | \\ | ||
行 342: | 行 376: | ||
* withInputs()で入力変数をフラッシュ変数に保存します | * withInputs()で入力変数をフラッシュ変数に保存します | ||
* withErrors()でバリデーションのエラーバッグをフラッシュ変数に保存します | * withErrors()でバリデーションのエラーバッグをフラッシュ変数に保存します | ||
- | * redirect()ヘルパー関数を使って入力画面のレンダリングを返します | + | * redirect()で前画面にリダイレクトするResponseオブジェクトをします |
* 検証成功の時 | * 検証成功の時 | ||
* 不要になったバリデーション用のフォームデータを削除します | * 不要になったバリデーション用のフォームデータを削除します |