@bfr33dom

Как работает loadMultiple в Yii2?

Добрый день. Мучаюсь в Yii2 пытаясь редактировать несколько строк из одной модели в одной форме.
Есть такая таблица состоящая из 93 столбцов.
645364ae17909020534949.png
Беру из таблицы 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. Или я чего то не понимаю?
  • Вопрос задан
  • 115 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы