Php 带有前缀、中间件和命名路由的管理路由组
我在名为Php 带有前缀、中间件和命名路由的管理路由组,php,laravel,routes,laravel-6,Php,Laravel,Routes,Laravel 6,我在名为VehicleController的控制器中有一些命名路由: vehicle.index vehicle.show 然后我有一个管理部分,在那里我定义了一个带有前缀和中间件的路由组。在本节中,我有一个资源控制器名AdminVehicleController,用于通过以下路径处理车辆的CRUD任务(不确定这是否是最佳做法): vehicle.index vehicle.create vehicle.store ... 但是,这些命名的路由是冲突的。我的路线web.php目前看起来像这样
VehicleController
的控制器中有一些命名路由:
vehicle.index
vehicle.show
然后我有一个管理部分,在那里我定义了一个带有前缀和中间件的路由组。在本节中,我有一个资源控制器名AdminVehicleController
,用于通过以下路径处理车辆的CRUD任务(不确定这是否是最佳做法):
vehicle.index
vehicle.create
vehicle.store
...
但是,这些命名的路由是冲突的。我的路线web.php
目前看起来像这样:
Route::get('vehicles','VehicleController@index')->名称('vehicle.index');
路径::get('vehicle/{vehicle}','VehicleController@show')->名称('vehicle.show');
路由::组(['prefix'=>'admin','middleware'=>'is.admin'],函数(){
路由::获取('/','AdminDashboardController@index');
路线::资源(“车辆”、“AdminVehicleController”);
});
如果我将'name'=>'admin'
添加到Route::group()
数组中,则路由名称将是adminvehicle.index
而不是admin.vehicle.index
在路由中组合所有这些参数的正确方法是什么?提供一个名称
数组作为第三个参数$options
数组的一部分,每个键都是资源控制器方法(索引、存储、编辑等),值是您想要给路由的名称
Route::resource('vehicle', 'AdminVehicleController', [
'names' => [
'index' => 'admin.vehicle.index',
// etc...
]
]);
作为第三个参数$options
数组的一部分,提供一个names
数组,每个键都是资源控制器方法(索引、存储、编辑等),值是您想要给路由的名称
Route::resource('vehicle', 'AdminVehicleController', [
'names' => [
'index' => 'admin.vehicle.index',
// etc...
]
]);
尝试将用作管理员组的
参数
Route::group(['prefix' => 'admin', 'middleware' => 'is.admin', 'as'=> 'admin.'], function () {
Route::get('/', 'AdminDashboardController@index')->name('dashboard');
Route::resource('vehicle', 'AdminVehicleController');
});
参考尝试使用作为管理组的参数
Route::group(['prefix' => 'admin', 'middleware' => 'is.admin', 'as'=> 'admin.'], function () {
Route::get('/', 'AdminDashboardController@index')->name('dashboard');
Route::resource('vehicle', 'AdminVehicleController');
});
参考您可以使用作为
键,'as'=>'admin.
,注意管理
末尾的
。我试过了,但是对于admin
(仪表盘URL)命名的路由将是admin.
-这不是一个大问题,但很烦人。你也可以将它命名为dashboard
,因此它将是admin.dashboard
,这样会更干净。你可以使用as
键,'as'=>'admin'。
,注意管理
末尾的
。我试过了,但是对于admin
(仪表板URL)命名的路由将是admin.
-这不是一个大问题,但很烦人。您也可以将其命名为dashboard
,因此它将是admin.dashboard
,这样会更干净。