cakephp2
$this->Form->inputを複数設置し、一つのまとまりとして記述しています。
例
$this->Form->input("Apple.id", [ 'type' => 'select', ......]); $this->Form->input("Grape.id", [ 'type' => 'select', ......]); $this->Form->input("Banana.id", [ 'type' => 'select', ......]); $this->Form->input("Nashi.id", [ 'type' => 'select', ......]);
そして現在それぞれの
$this->Form->error(
を設置しエラーをはくようにしています。
さて、これらの4つのinputのうちどれか2inputに選択があった場合、trueとしたいです。
最低2個です。
選択がなければ、「2つ入力してください。」的なメッセージを出したいです。
selectで入力される値はいくつもあるので、key内に値が入っていればtrueで結構です。inarrayでは値が何かを指定しなければならないので、使えなかったです。
それぞれにバリデーションをかけることはできるんですが、そのうちの指定数にのみといった制御をどうやってかけるべきですか?
考えた事ー
controllerにpostされてきたinput達のkeyと値をチェックし、unsetでバリデーションから外す。
これは正しいやり方
ですか?
何か参考サイトはありますか。ご教授お願いします。
あなたの回答
tips
プレビュー