我在我的控制器中
public function details($id)
{
$claim = Claim::findOrFail($id);
$details = $claim->details;
return response()->json([], 200);
}
我的路线
Route::resource('claims', 'Admin\\ClaimsController',['names'=> ['details'=>'admin.claims.details'], 'only' => ['index','store','update','destroy','details']]);
当我运行php artisan route:list
时,我在列表中看不到admin.claims.details(admin / claims / 1 / details)
这里的文档很模糊,所以我问如何正确设置自定义路由?如何指定“POST”或“GET”?
答案 0 :(得分:1)
要覆盖默认资源控制器操作的路由名称,您可以使用您的选项传递名称数组。
例如:
Route::resource('claims', 'ControllerClassName', [
'names' => [
'index' => 'admin.claims.details',
'create' => 'admin.claims.create',
// etc...
],
'only' => [
'index','store','update','destroy','details'
]
]);
参考:https://laravel.com/docs/5.2/controllers#restful-naming-resource-routes
以下是设置自定义命名的get / post路由的示例。
获取路线
Route::get('claims', ['as' => 'admin.claims.details', uses => 'ControllerClassName']);
POST路线
Route::post('claims', ['as' => 'admin.claims.details', uses => 'ControllerClassName']);