根据我当前的 url 获取路线名称
Get route name given my current url
请问有没有办法或laravel帮手知道我现在的路线名称?
例如,我正在使用 localhost:8081/user/1/edit 等 REST 请求
那我想知道我现在的路线名称。
当然我的路由名称是'/user/{id}/edit'
所以当我将当前的 url 与那条路线进行比较时。
假设我有一个传递给某个class的变量,知道我自己的路线是
$url = '/user/{id}/edit';
来自我的 blade 模板
@if (URL::current() == URL::to($url))
// this will fail because URL::current() is equal to /user/1/edit
@endif
如果没有办法做到这一点,我打算创建一个 preg_match。
我这样做的目的是,我正在创建自己的包来处理带有自定义过滤器的路由,为此,我需要将所有路由列表包装在该回调路由中 class .
如:
Route::{$process}($url, function($params_preg_matched) {
// Some Filtering Here
// Some Redirections Here.
});
我很难解释我为什么要这样做,因为我正在做一些新的事情。
如果你不想查看我的 github 项目,这里是:
https://github.com/daison12006013/daison-admin
不太清楚可以试试这个ref
$name = Route::currentRouteName();
$url = URL::route($name);
找到这个Route::getCurrentRoute()->getPath()
此外,echo URL::to(Route::getCurrentRoute()->getPath())
以便您可以匹配某个 URL,当使用 callback/functional 路由和 RESTful 请求时,替代使用 URL::to()
。
请问有没有办法或laravel帮手知道我现在的路线名称?
例如,我正在使用 localhost:8081/user/1/edit 等 REST 请求 那我想知道我现在的路线名称。
当然我的路由名称是'/user/{id}/edit'
所以当我将当前的 url 与那条路线进行比较时。
假设我有一个传递给某个class的变量,知道我自己的路线是
$url = '/user/{id}/edit';
来自我的 blade 模板
@if (URL::current() == URL::to($url))
// this will fail because URL::current() is equal to /user/1/edit
@endif
如果没有办法做到这一点,我打算创建一个 preg_match。
我这样做的目的是,我正在创建自己的包来处理带有自定义过滤器的路由,为此,我需要将所有路由列表包装在该回调路由中 class .
如:
Route::{$process}($url, function($params_preg_matched) {
// Some Filtering Here
// Some Redirections Here.
});
我很难解释我为什么要这样做,因为我正在做一些新的事情。
如果你不想查看我的 github 项目,这里是: https://github.com/daison12006013/daison-admin
不太清楚可以试试这个ref
$name = Route::currentRouteName();
$url = URL::route($name);
找到这个Route::getCurrentRoute()->getPath()
此外,echo URL::to(Route::getCurrentRoute()->getPath())
以便您可以匹配某个 URL,当使用 callback/functional 路由和 RESTful 请求时,替代使用 URL::to()
。