同一控制器功能的多个路由
Multiple routes for the same controller function
我需要有 2 个路由由同一个控制器函数管理。
我不想创建不同的规则,而是想创建 1 个规则。
所以不是这样的:
Route::get('/', ['uses' => 'MyController@index']);
Route::get('dashboard', ['uses' => 'MyController@index']);
我想使用 1 条规则。我发现了这个 multiple routes in single Route::get() call Laravel 4 但那个代码对我不起作用。
这是我尝试过但没有成功的方法:
// THEY BOTH DO NOT WORK
Route::get('/{name}', ['uses' => 'MyController@index'])->where('name', 'dashboard|');
Route::get('/{name}', ['uses' => 'MyController@index'])->where('name', '(dashboard)?');
根据这些规则,如果我转到 /
路线,我会收到 404 错误。
如果我去 dashboard
路线,它会起作用。
制作 name
一个 optional route parameter 应该可行:
Route::get('/{name?}', ['uses' => 'MyController@index'])->where('name', 'dashboard');
不确定您为什么使用 uses
,较短的版本是:
Route::get('/{name?}', 'MyController@index')->where('name', 'dashboard');
我需要有 2 个路由由同一个控制器函数管理。
我不想创建不同的规则,而是想创建 1 个规则。
所以不是这样的:
Route::get('/', ['uses' => 'MyController@index']);
Route::get('dashboard', ['uses' => 'MyController@index']);
我想使用 1 条规则。我发现了这个 multiple routes in single Route::get() call Laravel 4 但那个代码对我不起作用。
这是我尝试过但没有成功的方法:
// THEY BOTH DO NOT WORK
Route::get('/{name}', ['uses' => 'MyController@index'])->where('name', 'dashboard|');
Route::get('/{name}', ['uses' => 'MyController@index'])->where('name', '(dashboard)?');
根据这些规则,如果我转到 /
路线,我会收到 404 错误。
如果我去 dashboard
路线,它会起作用。
制作 name
一个 optional route parameter 应该可行:
Route::get('/{name?}', ['uses' => 'MyController@index'])->where('name', 'dashboard');
不确定您为什么使用 uses
,较短的版本是:
Route::get('/{name?}', 'MyController@index')->where('name', 'dashboard');