私は2つのオプションでオプションリストを作成しました:以下のようにはいといいえ
<?php echo $form->radioButtonList($model,'active', array(1=>'Yes', 0=>'No'), array('separator'=>"" )); ?>
オプション1をデフォルトで選択するように設定するにはどうすればよいですか?
コントローラで$model->active = 1
を設定する必要があります。
モデル自体にデフォルト値を設定することもできます。
これは、reportTypeにradioButtonListを使用し、デフォルトで1つ選択されているフォームです。
class FreeReportForm extends CFormModel
{
public $userId;
public $email;
public $callId;
public $reportType = 1;
public $companyNumber;
public $expiry;
...
}
フォーム要素の直前のビューページが好きです。なので
<?php $model->isNewRecord ? $model->active = 1: $model->active = $model->active ; ?>
これにより、更新アクションも処理されます。
$ modelを使用せずに、デフォルトの選択値として値1を設定することもできます。
<?php echo $form->radioButtonList($model,'1', array(1=>'Yes', 0=>'No'), array('separator'=>"" )); ?>
コントローラの関数actionXXX()に「$ model-> active = 1」という行を追加する必要があります。たとえば、ラジオが作成ページにある場合、actionCreate()という名前の関数が必要であり、それがコードを追加する場所です。