ユーザーがチェックボックスを介してプロジェクトの言語を選択できるフォームをCakePHPで作成しました。これらのチェックボックスに対して、検証ルールを実装しました (複数のチェックボックスをチェックする必要があります)。すべて正常に動作しますが、すべてのチェックボックスに「必須」の星が表示されます。
フォームを完成させるにはすべてのチェックボックスをオンにする必要があるようにユーザーに思われるため、これは私の意見では非常に醜いです。私の検証ルールは次のようになります。
'Language' => array(
'rule' => array(
'multiple',
array(
'min' => 1
)
),
'message' => 'Please select at least one language'
)
「言語」は別のモデルであり、これをチェックボックスの伝播に使用します。では、チェックボックスの近くにこの星を表示しないようにするトリックはありますか? 最善の方法は、Cake コアで何も変更する必要がないことです...
編集:
これに使用しているビューコードは次のとおりです。
echo $this->Form->input('Project.Language', array('type' => 'select', 'multiple' => 'checkbox'));