Код: Выделить всё
$request = Yii::$app->request;
$parentTask = TaskData::findOne(['dataId' => $request->post('id')]);
$taskModel = new Task();
$childTaskData = new TaskData();
if ($childTaskData->load($request->post()) && $childTaskData->prependTo($parentTask)) {
$taskModel->ownerId = Yii::$app->user->id;
$taskModel->attributes = $request->post();
$taskModel->link('taskData', $childTaskData);
return (new Levels())->addExperience(Yii::$app->user->identity->username, 10);
}
Поэтому вопрос, правильно ли реализовано сохранение у меня? Сперва хотел создать метод в модели и дернуть его в контроллере, но вспомнил, что передать данные из $request->post() туда согласно советам нельзя.К примеру, в типичном действии обновления модели контроллер может сначала создать экземпляр модели, затем заполнить его данными из $_POST и, в случае успешного сохранения модели, перенаправить браузер пользователя на страницу созданной модели. Стоит отметить, что само сохранение модели должно быть реализовано в классе модели, а не в контроллере;