Как создать разные middleware для разных методов в Route::resource

Есть ресурсный контроллер и соответствующий роут:

Route::resource('/path', Controller::class)

для каждого метода этого контроллера мне нужно использовать разный middleware. Можно как то это сделать внутри файла роутов, а не в конструкторе?

Мне надо что-то типа:

Route::resource('/path', Controller::class)->middleware(['index' => 'guest', 'create' => 'auth'])


Ответы (1 шт):

Автор решения: InDevX

Способ довольно старый, но, если не ошибаюсь, ничего лучше до сих пор нет.

Route::resource('/path', Controller::class, ['only' => ['index']])
    ->middleware(['cors','auth']);

Route::resource('/path', Controller::class, ['except' => ['show']])
    ->middleware(['cors']);
→ Ссылка