[CakePHP]Transitionコンポーネントでバリデーションを効かせるモデルを指定
またバリデーションネタ。
cakephpでフォーム作成の際に、Transitionコンポーネントを使用するとすこぶる便利。
以下が使い方としてはわかりやすかった。
cakePHP Transitionコンポーネント – Logicky Blog
で、その中で、入力画面から確認画面に遷移する際に指定したバリデーションルールを適用させたかった。
たいていのサイトでは、$this->Transition->checkData('xxx')
を使えばよい、と書いてあったのだが、それだと効かなかった。
原因を探していると、どうやら使用しているコントローラーで複数のモデルを使用していると効かないよう。
そんなときはcheckData
の第2引数でモデルを明示的に指定してやると効くようになった。
1 2 3 4 5 6 7 8 9 |
|
上記のように書くと、Hoge
モデルで記述したバリデーションが適用される。
ここを配列にして複数のモデルを指定してやることも可能だそう。
[PHP][CakePHP] Transitionコンポーネント – checkData() について
それにしてもこのコンポーネントはびっくりするくらい便利。ほんとに。