Laravel 5.7 передает в контроллер только второй параметр - PullRequest
0 голосов
/ 30 января 2019

У меня есть следующий маршрут

Route::get('/{slug}/pd/{public_id}', 'Products\ShowController');

И я хочу передать ShowController только параметр public_id.

       class ShowController extends Controller
{
        public function __invoke($public_id)
        {
            dd($public_id);
        }
    }

Если я запускаю приведенный выше код, он возвращает значение слага.Мне нужно, чтобы слаг был просто подстановочным знаком в URL.

1 Ответ

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

Если слаг - это определенные слова в вашей базе данных, возможно, вы можете проверить префикс маршрута, чтобы удалить слаг из маршрута.Если нет, просто проигнорируйте слизняк после того, как он попадет в контроллер.Если он есть в маршруте, он будет доступен в контроллере.

class ShowController extends Controller
{
     public function __invoke($slug, $public_id)
     {
          dd($public_id);
     }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...