0

Cakephpでデフォルトですべてのチェックボックスを選択したいのですが、どうすればよいですか?

 $selected = $this->Form->input('user_id')                  

 <?php echo $form->input('user_id', 
                                array(
                                'multiple'=>'checkbox',
                                    'options'=>$user,
                                    'checked'=>$selected
                                )   
                            );
                ?>

次のリンクをたどりましたが、成功しませんでした
。cakephp:チェックボックスをチェックに設定するにはどうすればよいですか?
CakePHPの複数のチェックボックス-どのチェックボックスをオンにするかを設定する方法は?

4

1 に答える 1

0

コントローラーを使用して、すべてのオプションを反復処理し、$this->request->data を設定します。デフォルト値のビューを使用することはありません。私にとって、これはロジックであり、GET の場合のコントローラーの責任の一部です (POST ではなく、投稿されたデータを代わりに使用する必要があります)。

http://www.dereuromark.de/2010/06/23/working-with-forms/を参照してください。

あなたの場合(userIdsの配列またはそれらを含む他の配列を取得したと仮定):

foreach ($userIds as $userId) {
    $this->request->data['Model']['user_id'][] = $userId;
}

これは、if (!posted) に対してのみ行うことを忘れないでください。

于 2013-02-15T11:56:07.623 に答える