I have a dropdown list in an active form i display the data correctly but when I want to insert the value of the selected value of the dropdownlist the value is null.
In my controller :
$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]);
In my view :
<?= $form->field($model, 'idEtatRessource')->dropDownList($etats) ?>
And in the model :
$histEtatRessource = new HistoriqueEtatRessource();
$histEtatRessource->idRessource = $this->idRessource;
$histEtatRessource->idEtatRessource = $this->idEtatRessource;
if ($ressource->save() && $histEtatRessource->save())
{
return $ressource;
}
I have an IntegrityException because the value of $this->idEtatRessource
is null (primary key in my db)
Thanks !
---EDIT---
When I passed $_POST['idEtatRessource']
instead of $this->idEtatRessource
it work and I don't know why ! Help please ;)