如何在Laravel 5.3中动态获取路由前缀名称?
例如,这里是网址:
这里是路线档案。路由组前缀为admin
:
Route::group(['prefix' => 'admin'], function () {
Route::get('users', function () {
// Matches "/admin/users"
});
});
答案 0 :(得分:0)
您要问的不是很清楚,但我想您希望能够动态配置路由组前缀。例如,能够动态更改管理区域的URI前缀。
让我们在config/app.php
文件中添加相应的配置指令:
return [
// ...
'admin_url' => 'backoffice',
];
然后在你的路线档案中:
// Fetch the prefix from the config file, fallback to "admin" if not available
Route::group(['prefix' => config('app.admin_url', 'admin')], function () {
Route::get('users', function () {
// ...
});
});
然后在控制器中,您可以通过对config()
帮助程序或$request->route()->getPrefix()
的同一调用来访问已定义的路由前缀。
如果上下文中没有$request
实例,您可以在任何控制器中获得$this->getRouter()->getCurrentRoute()->getPrefix()
的前缀。