5丁目通信(仮称)

とある5丁目で活動する還暦を過ぎたWebプログラマーの覚え書きです。それとかかってくる迷惑電話や、家業のアパート経営について。

CakePHPのformヘルパーのラジオボタンで、デフォルトを指定する話し


ちょっとはCakePHPのformヘルパーではまったこと。覚え書きです。

formヘルパーのinputメソッドでラジオボタンを表示できます。

$groups = array('a'=>1, 'b'=>2, 'c'=>3);

$form->input('User/group_id', array('options'=>$groups, 'type'=>'radio'));

といった書き方です。

ここで、bをデフォルトの選択にしたいとします。

$form->input('User/group_id', array('options'=>$groups, 'type'=>'radio', ‘checked’=>2));

正解は、コントローラで

$this->data['User']['group_id']='2';

のように初期値を入れていかないといけないようです。

著:山田祥寛
¥3,366 (2024/11/21 16:43時点 | Amazon調べ)
著:松浦 健一郎, 著:司 ゆき
¥2,574 (2024/11/21 16:43時点 | Amazon調べ)
著:谷藤賢一, 著:徳丸浩
¥2,750 (2024/11/21 16:43時点 | Amazon調べ)
,

“CakePHPのformヘルパーのラジオボタンで、デフォルトを指定する話し” への2件のフィードバック

  1. hiromiのアバター

    ‘default’オプションで期待の動作をします。(この場合、$this->dataに値が入っていればそれが優先されます。)
    ‘value’を指定することによって強制的に指定をすることもできます。

  2. andoのアバター
    ando

    その前に’default’と’value’も試してみましたが、どうてもデフォルトの選択ができなかったのです。CakePHPのソースを読んでみればいいのですが、$this->dataがうまくいってしまいましたので時間がないのでこれでよしとしました。