我不能以一条路线使用两个名字? 如下所示:
Route::get('/', 'Admin\HomeController@index')->name(['admin.home', 'planner.home.index']);
谢谢!
答案 0 :(得分:1)
只需定义两个具有两个名称的路线
Route::get('/', 'Admin\HomeController@index')->name('admin.home');
Route::get('/', 'Admin\HomeController@index')->name('planner.home.index');
答案 1 :(得分:0)
如果您希望在同一应用中拥有2个版本(路由名称),则可以执行此操作。
<?php
$routes = ['v1' => 'app.name1.', 'v2' => 'app.name2.'];
foreach ($routes as $routeVersion => $routeName) {
// Yours router app (i.e app/v1/pages or app/v2/pages)
// Your router name (i.e app.name1 or app.name2)
Route::prefix('app' . $routeVersion)
->middleware('auth')
->name($routeName)
->group(function(){
# Your custom routes
...
}
}
}
?>
这是路由列表中响应的示例
希望它能为您服务!
答案 2 :(得分:0)
这仅在您需要名称时才有效,而不是网址,尽管这很棘手且草率。
Route::get('/', 'Admin\HomeController@index')->name('admin.home');
Route::get('/2', function() {
return redirect()->route('admin.home')
})->name('planner.home.index');
因此,如果您使用 route('admin.home')
或 route('planner.home.index')
,它会将您重定向到 index
中的方法 HomeController
。
答案 3 :(得分:-1)
foreach($pages as $key => $page){
Route::any("/".$page, "Controller@index")->name($page);
}