В поисках чистого кода я работаю с контроллерами одиночного действия в laravel. В этих контроллерах одиночного действия у меня есть __invoke и __construct. Они выглядят так:
public function __construct()
{
$this->middleware('auth');
$this->middleware(['permission:create documents']);
}
public function __invoke($id)
{
$machine = Machine::find($id);
return view('document.create', compact('machine'));
}
И я определяю маршрут создания документа в Интернете. php файл выглядит так:
Route::get('/document/create/{id}', CreateDocument::class)->name('document.create');
Поскольку я использую контроллеры одиночного действия, это приводит к много файлов в файле. php, и это вызывает проблему, из-за которой иногда трудно найти маршруты.
Можно ли определить маршрут в функции __construct контроллера вместо размещения его в файле. php? И если это возможно, как я могу это сделать.
Я исследовал, возможно ли это, и не могу найти сюрприз для моего вопроса.
Я не знаю, является ли StackOverflow лучшим местом для того, чтобы задать этот вопрос, если мне нужно разместить его где-нибудь еще вместо StackOverflow, пожалуйста, дайте мне знать.