Laravel: Получить текущие параметры в маршрутах. Переполнение стека

Я использую расширение laravel-menu в моем приложении Laravel.
Это приложение содержит несколько проектов с несколькими местоположениями, прикрепленными к каждому проекту.

Теперь я хочу определить боковое меню, где я могу, среди прочего, управлять местоположениями.
URL проекта

project/1

URL страницы местоположений проекта

project/1/locations

Как настроить это боковое меню вways.php?

Мой код маршруты.

Route::resource('project', 'ProjectsController'));
Route::resource('project.locations', 'LocationsController');

Menu::make('sidemenu-project', function($menu) {
$menu->add('Locaties', array('route' => 'project.locations.index','{project?}'))->data('id',1); // this is not working

});

Это выводит URL / проект /% 7Bproject% 7D / местоположения

0

Решение

Перейдите в свой терминал (командная строка) и выполните следующую команду:

> php artisan routes

Тогда вы увидите все заявленные маршруты с их URL и соответствующее название маршрута и method name,

0

Другие решения

Я очень новичок в Laravel, но страница документации Routes упоминает, что вы создали контроллер с такими параметрами:

Route::get('user/{id}', function($id) { ... });

Не могли бы вы поэтому определить свой маршрут как

Route::get('project/{id}/locations', function($id) { ... });
0

Я думаю, что у вас есть эта проблема из-за неправильной настройки маршрутов. Чтобы получить структуру маршрута, которую вы хотите, вы должны поставить свой project/1/locations определение маршрута выше первый. Считайте, что ваш route.php:

 Route::resource('project/{project}/locations', ['as'=>'project.locations', 'uses'=> 'LocationsController']);
Route::resource('project', 'ProjectsController'));
0
По вопросам рекламы [email protected]