2015-01-30 2 views
0

Я хотел бы спросить, есть ли способ или помощник laravel, чтобы узнать мое текущее название маршрута?Получить имя маршрута с учетом моего текущего url

например, я использую запрос REST, такой как localhost: 8081/user/1/edit , тогда я хочу узнать свое текущее название маршрута.

конечно мое имя маршрута «/ пользователь/{ID}/редактировать»

так, когда я сравниваю мой текущий URL на этот маршрут.

Допустим, у меня есть переменная прохода к определенному классу, зная свой собственный маршрут, как

$url = '/user/{id}/edit';

Из моего шаблона лезвия

@if (URL::current() == URL::to($url)) 
    // this will fail because URL::current() is equal to /user/1/edit 
@endif 

Если нет никакого способа сделать это, Вместо этого я планирую создать preg_match.

Моя цель заключается в том, что я создаю свой собственный пакет, который обрабатывает маршруты с помощью настраиваемых фильтров. Для этого мне нужно обернуть весь список маршрутов внутри этого класса Route Routback.

Такие, как:

Route::{$process}($url, function($params_preg_matched) { 
    // Some Filtering Here 
    // Some Redirections Here. 
}); 

Это трудно для меня, чтобы объяснить, почему я это делаю, потому что я делаю что-то новое.

Если вы wan't, чтобы проверить мой GitHub проект, вот он: https://github.com/daison12006013/daison-admin

ответ

1

Найдено это Route::getCurrentRoute()->getPath()

Так далее, echo URL::to(Route::getCurrentRoute()->getPath()), чтобы вы могли сопоставить определенный URL-адрес, используя URL::to() при использовании обратных вызовов/функциональных маршрутов с запросом RESTful.

1

Я не знаю, очевидно, может вы можете попробовать это ref

$name = Route::currentRouteName(); 
$url = URL::route($name); 
+0

Я забыл включить, что я использую функции маршрута вместо названных маршрутов. – daison12006013

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