CakePHPで入力フォームを作成する場合、
フォームをFormヘルパーで作成すると、
エラー時などに入力値を保持してくれる。
例えば、ユーザー登録画面を作成する場合、
ユーザーのメールアドレスをユニークチェックすることがある。
同じメールアドレスが存在する場合は、
「メールアドレスが重複しています」みたいにエラー表示して
再度入力フォームを表示されると思う。
この時に入力値が保持されてないと再入力することになる。
CakePHPでは フォームヘルパー を使うと、
その入力値を保持してくれる。
別にフォームヘルパーと使わなくても
フォーム が 「 name="data[User][name]"」みたいな配列構造であれば、
勝手に値をバインドしてくれるのかな・・・。
分からんけど。
ポイントとしては、フォームにデフォルト値を指定する時に
以下のように value を使うと、入力値が反映されない。
valueの値になってしまう・・・。
$this->form->input('User.name', array('type'=>'text', 'value'=>'test_name'));
そーゆー時は以下のように default を使うといい。
$this->form->input('User.name', array('type'=>'text', 'default'=>'test_name'));
実はこれ、今まで知らなかった・・・。
全部自分で作ってた・・・。
最近は簡単なフォームだと普通にHTMLで書く傾向にあったけど、
ちゃんと フォームヘルパー 使ったほうがいい・・・。
フレームワークについて学ぶって大事だと思った。