Как создать маршрут слизней, исключая слагов в маршрутизации Laravel? - PullRequest
0 голосов
/ 17 января 2019

У меня в настоящее время следующие маршруты.

$router->get('/contact-us','HomeController@contactUs')->name('contact-us');
$router->get('/about','HomeController@about')->name('about');

Теперь я хочу сделать общие страницы доступными из следующего маршрута,

$router->get('/{slug}','SomeController@about')->name('general-page');

Но главная проблема заключается в том, чтобы связаться с нами и о страницесовпало с маршрутом слагов и называется неправильный контроллер.Есть ли способ исключить такие слизни из общего маршрута страницы.

1 Ответ

0 голосов
/ 17 января 2019

Вы можете добавить шаблон к вашему маршруту, где исключаются термины contact-us и about, например:

$router->get('/{slug}','SomeController@about')
    ->where('slug', '^((?!about|contact-us).)*$')
    ->name('general-page');

Для объяснения регулярного выражения см. здесь

Таким образом, порядок определения маршрутов не имеет значения.

...