2015-02-06 23 views
1

Как я могу использовать маршрут catch-all в конце route.php в laravel 5, как это?laravel 5 - поймать весь маршрут (маршрут: контроллер) в конце маршрута.php?

Route::controller('{user}','PublicProfileController'); 

Это «разрушает» отладчик laravel и некоторые javascripts во всех представлениях. Это, кажется, работает лучше:

Route::get('{user}','[email protected]'); 

Я пытаюсь иметь URL-адрес, как mysite.com/username с сегментами, как mysite.com/username/photosmysite.com/username/posts или

+0

'Route :: контроллер («/ {пользователь}»,«PublicProfileController»);' должны быть что вам нужно? – Laurence

+0

Кажется, нет :(он прерывает javascript-аранжировки фотографий через веб-сайт и отладчик. Если я # комментирую строку, все снова хорошо. – haheute

+1

Хорошо - проблема заключается в том, что профайлер (и, вероятно, ваш фото-пакет) регистрирует маршруты * после * файл 'routes.php', поэтому, когда вы создаете маршрут catchall, он собирается сломать любые пакеты, которые регистрируют * после *' routes.php'. – Laurence

ответ

2

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

Проблема в том, что маршруты пакетов регистрируются после тех, что указаны в вашем routes.php. Вы можете изменить это, изменив порядок поставщиков услуг в массиве providers в config/app.php.

Просто убедитесь, что поставщики услуг пакетов перечислены до того 'App\Providers\RouteServiceProvider' (это где приложения routes.php загружается)

Смежные вопросы