Это происходит потому, что когда вы добавляете ваш {параметр} после /
, все маршруты, определенные после этого, рассматриваются как имеющие этот тип
Route::get('/{name}', 'PublicController@index')->name('welcome');
// below routes not work
Route::get('stats', function () {});
Route::get('test', function () { });
Route::get('hello', function () {});
То же самое происходит, если вы создаете новый маршруткак показано ниже:
Route::get('post/{slug}', function () {});
// this get routes are also not work
Route::get('post/show', function () {});
Route::get('post/preview', function () {});
, поэтому рекомендуется всегда определять параметризованный маршрут в последний раз
Route::get('post/show', function () {});
Route::get('post/preview', function () {});
Route::get('post/{slug}', function () {});