Предположим, у меня есть модель User, которая связана с моделями Image, Card и т. д. Это означает, что когда я создаю нового пользователя, я должен создавать экземпляры Image и Card вместе с ним, например У меня есть что-то вроде этого в методе хранилища моего контроллера:
DB::beginTransaction();
try {
$user->saveOrFail();
$imageObj = new Image();
$imageObj->user_id = $user->id;
// set the other fields
$imageObj->saveOrFail();
$cardObj = new Card();
$cardObj->user_id = $user->id;
// set the other fields
$cardObj->saveOrFail();
.......................
DB::commit();
}
return redirect('some');
}
Для более чем двух связанных моделей в контроллере слишком много кода, поэтому есть ли способ реорганизовать этот код для лучшей масштабируемости?






Я бы выбрал Factory. С помощью этого шаблона вы можете легко создать свой новый объект и вместе с ним все, что вам нужно. Вам необходимо передать правильные параметры вашей службе.
проверьте эти документы для создания шаблона Factory в SYmfony https://symfony.com/doc/current/service_container/factories.html