我有一个活动表单中的下拉列表,我正确显示了数据,但是当我想插入下拉列表的选定值的值时,该值为空。
在我的控制器中:
$model = new AjoutRessourceForm();
if ($model->load(Yii::$app->request->post()) && $model->validate())
{
if ($ressource = $model->addRessource())
{
return $this->redirect(['form/ressource']);
}
}
$sql = "select idEtatRessource, nomEtatRessource from etat_ressource";
$command = $connection->createCommand($sql);
$data = $command->queryAll();
$etats = ArrayHelper::map($data, 'idEtatRessource', 'nomEtatRessource');
return $this->render('/form/newRessource', ['model' => $model, 'etats' => $etats, 'types' => $types]);
在我看来 :
<?= $form->field($model, 'idEtatRessource')->dropDownList($etats) ?>
在模型中:
$histEtatRessource = new HistoriqueEtatRessource();
$histEtatRessource->idRessource = $this->idRessource;
$histEtatRessource->idEtatRessource = $this->idEtatRessource;
if ($ressource->save() && $histEtatRessource->save())
{
return $ressource;
}
我有一个 IntegrityException,因为值为$this->idEtatRessource
null(我的数据库中的主键)
谢谢 !
- -编辑 - -
当我通过$_POST['idEtatRessource']
而不是$this->idEtatRessource
它工作时,我不知道为什么!请帮忙 ;)