Laravel предоставляет некоторые встроенные соглашения для размещения вашего действия или кода CRUD (Create - Read - Update - Delete).
Как правило, вы можете поместить связанное действие модели в один и тот же метод. Для начала вы можете использовать команду artisan:
php artisan make:controller RecordSheetController --resource
Это добавит стандартные методы в ваш контроллер. Эти методы включают ie в любые resource
методы, которые используются в вашей маршрутизации, которые соответствуют стандартам GET / POST / PUT / et. c.
После настройки вашего контроллера обычно Самый простой и удобный способ выполнения связанных действий в рамках одного и того же метода, поэтому вам не нужно go вперед и назад с пользователем от страницы к контроллеру и обратно. Итак:
public function store(Request $request){
// Add transactions as you wish
$record = RecordSheet::create([
.......
' user_id' => Auth::user()->id
]);
ModelB::create([
.......
'recordSheet' => $record->id,
'user_id' => Auth::user()->id
]);
}
Вы, конечно, можете создавать в нем подфункции, но главное - выполнять это одновременно для повышения эффективности. Если есть много повторяемых подфункций с менее связанными действиями, может быть полезно переместить их в другие части вашего приложения. Но для простого, непосредственно связанного творчества, как правило, удобнее держать их в одном классе.