我使用Laravel的路由组尝试在路由文件中停止复制。
我有一个主要群组frontend
。这包含namespace
Frontend
和as
frontend.
嵌套在该组中,是另一个组。该群组有prefix
account
,可为每条路线添加/account/
。它还有as
account.
。
嵌套组内的路由,我希望是:
frontend.account.home
frontend.account.order.show
frontend.account.order.index
相反,我得到:
frontend.account.home
frontend.account.account.order.index
frontend.account.account.order.show
代码:
Route::group(['as' => 'frontend.', 'namespace' => 'Frontend'], function () {
Route::group(['prefix' => 'account', 'as' => 'account.', 'namespace' => 'Account'], function () {
Route::get('home', [
'as' => 'home',
'uses' => 'Home\Controller@get'
]);
Route::resource('order', 'Order\Controller', ['except' => [
'create',
'store',
'update',
'destroy',
'edit',
]]);
});
});
答案 0 :(得分:1)
由于您除了Route::resource
方法的几乎所有路线外,为什么不为index
和show
创建2条单线路,如下所示:
// in your routes file, within your nested group :
Route::get('order', ['as' => 'order.index', 'uses' => 'Order\Controller@index' ]);
Route::get('order/{id}', ['as' => 'order.show', 'uses' => 'Order\Controller@show' ]);