Добрый день. Мучаюсь в Yii2 пытаясь редактировать несколько строк из одной модели в одной форме.
Есть такая таблица состоящая из 93 столбцов.
Беру из таблицы 4 строки
$plan = Plan::find()->where(['clinic_id' => $clinic_id])->all();
Во view создаю ActiveForm. Поля создаю так:
foreach($plan as $i => $pl) {
foreach($pl as $key => $value) {
echo $form->field($pl, "[$i]$key")->textInput(['maxlength'=>3, 'value' => $value])->label(false);
}
}
Обработчик в контроллере:
if(Model::loadMultiple($plan, Yii::$app->request->post())) {
foreach ($plan as $pl) {
$pl->save();
}
return ...;
}
Проблема в том что ничего не сохраняется. Никаких ошибок. Точнее сохраняет ничего не меняя.
Делал проверку loadMultiple, выводит true;
Внутри if делаю дамп переменной $plan, а он мне выводит изначальный $plan, который без изменений.
Делаю дамп Yii::$app->request->post() выводит уже правильный, с изменениями.
Как будто он не записывает в $plan данные из поста. Но дамп loadMultiple пишет true. Или я чего то не понимаю?