Роутинг в Laravel работает не так как ожидается?

Здравствуйте, не могу понять к в Laravel (последняя 8-ая версия, может в других версиях также) работает роутинг.
Route::prefix('admin')->name('admin.')->middleware('auth')->group(function()
{
    /* admin home page */
    Route::get('/', [\App\Http\Controllers\Admin\Pages\Index::class, 'list'])->name('home');
});

Ниже конструкция следующего вида:
Route::group(['prefix' => '{language}'], function() {
    Auth::routes();
    Route::get('/{slug?}', [\App\Http\Controllers\Page::class, 'index'])->name('page');
});

При открытии /admin хотя по идеи, эта группа не должна попадать под другую.
Missing required parameters for [Route: page] [URI: {language}/{slug?}]

В `app/Http/Kernel.php` в $middlewareGroups добавлен \App\Http\Middleware\Locale::class для установки языка системы, в зависимости от ссылки.

Как я понимаю laravel должен искать совпадения. Но почему вышестоящий admin игнорится, и как такое обходить.
  • Вопрос задан
  • 148 просмотров
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Laravel
Но почему вышестоящий admin игнорится, и как такое обходить.
Потому что он вышестоящий. Обходить легко - сделать нижестоящим.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы