同一控制器功能的多条路线

时间:2019-11-01 16:05:48

标签: laravel controller routes laravel-6

我需要由同一控制器功能管理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路线,那就行了。

1 个答案:

答案 0 :(得分:3)

name做一个optional route parameter应该可以:

Route::get('/{name?}', ['uses' => 'MyController@index'])->where('name', 'dashboard');

不确定使用uses的原因,简称为:

Route::get('/{name?}', 'MyController@index')->where('name', 'dashboard');