@Leffken
Студент, как студент!

Как в yii2 записываются данные из post в модель?

Не много не понимаю работы такой конструкции
if (Model::loadMultiple($infoModels, Yii::$app->request->post())) { ... }
или
if ($model->load(Yii::$app->request->post())) { ... }

Если в представлении пользоваться field'ом то все более или менее понятно, там указывается модель к которой относится поле и при отправке формы контроллер вставляет в модель нужные данные
<?= $form->field($model, 'name')->textInput() ?>
А вот при генерации страницы с помощью jquery (динамической страницы) у меня возникает проблема. Вроде бы описал структуру такую же как создает ее yii, но данные не сохраняются. А именно в loadMultiple сохраняется только первая модель, а остальные нет. Может быть есть какой нибудь мануальчик (или несколько памяток) как для yii писать html вручную ?
  • Вопрос задан
  • 1280 просмотров
Решения вопроса 1
arutyunov
@arutyunov
Mooza.ru — Делаем сайты
Во-первых, смотрите что уходит из формы на сервер через debug-панель в браузере.

Во-вторых, посмотрите примеры работы с load и loadMultiple в документации, либо в других расширениях (поищите на github).

В целом нет особой разницы как выводить input — через yii, либо "голым" html. Главное, чтобы поле name было заполнено верно. Соответственно для loadMultiple у вас в name должен быть указан массив. Например, вы заполняете форму с заявкой, в заявке может быть несколько услуг. Пример name="Bid[servicesIds][]". В результате на сервере у вас в $_POST['Bid']['servicesIds'] будет массив id услуг.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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