是否有更好的方式来编写这些路由?似乎我在我的路由文件中重复相同的控制器。
Route::post('user', [UserController::class, 'update']);
Route::get('user', [UserController::class, 'index']);
Route::delete('users/{id}',[UserController::class, 'destroy']);
你可以使用资源路由,在其中指定控制器中的操作子集。
Route::resource('user', UserController::class)->only([
'index', 'update', 'destroy'
]);
在使用存根生成的CRUD方法生成控制器时,还可以使用--model
选项。
php artisan make:controller UserController --resource --model=User
结果:
+-----------+-------------+--------------+---------------------------------------------+------------+
| Method | URI | Name | Action | Middleware |
+-----------+-------------+--------------+---------------------------------------------+------------+
| GET|HEAD | user | user.index | AppHttpControllersUserController@index | web |
| PUT|PATCH | user/{user} | user.update | AppHttpControllersUserController@update | web |
| DELETE | user/{user} | user.destroy | AppHttpControllersUserController@destroy | web |
+-----------+-------------+--------------+---------------------------------------------+------------+