1
我創建了一個DynamicModel來構建一個包含checkboxList的搜索表單,其中的項目由模型的記錄填充。表單工作正常,但表單顯示在結果頁面上,並且所有字段都使用除checkboxList之外的先前選定的值填充。使用DynamicModel問題的checkboxList的預填充
控制器:
$model = DynamicModel::validateData(
['date_from',
'date_to',
'client_site',
'report_types',
]);
$model->addRule(['client_site'], 'integer');
$model->addRule(['client_site', 'report_types'], 'required');
$model->addRule(['date_from','date_to'], 'string');
$model->load(Yii::$app->request->post()) && $model->validate();
$reportTypes = ArrayHelper::map(ReportType::find()->asArray()->all, 'id', 'name');
return $this->render('print-report-form', [
'report_types' => $reportTypes,
'model' => $model,
]);
查看:
<?= $form->field($model, 'report_types[]')
->inline(false)
->checkboxList($reportTypes);
?>
我需要扳平$ reportTypes在模型中的另一種方式?關於爲什麼選擇的複選框未在表單提交中預填充的任何想法?
非常感謝你的迴應。我可以通過從表單中的'report_types []'中刪除''''來解決它。從文件傳遞到文件時,變量名稱應該沒有關係。克隆模型也是不必要的,但我很感激。我很迷茫。謝謝 – Dubby