## 说明
laravel遵从RESTful 架构的设计原则,将数据看做一个资源,由URI来指定资源.对资源进行的获取,创建,修改和删除操作,分别对应HTTP协议提供的GET,POST,PUT,PATCH,和DELETE方法 . 当我们要查看一个ID为1的用户时,需要向/users/1地址发送一个GET请求,当laravel的路由接收到该请求时,默认会把该请求传给控制器的相关方法进行处理.
## resource方法
laravel为我们提供了resource方法来定义用户的资源路由. 该方法遵从RESTful 架构为用户资源生成路由.该方法接收两个参数,第一个参数为资源名称,第二个参数为控制器名称.
~~~
Route::resource('users', 'UsersController');
~~~
上面的代码等同于
~~~
Route::get('/users', 'UsersController@index')->name('users.index');
Route::get('/users/{user}', 'UsersController@show')->name('users.show');
Route::get('/users/create', 'UsersController@create')->name('users.create');
Route::post('/users', 'UsersController@store')->name('users.store');
Route::get('/users/{user}/edit', 'UsersController@edit')->name('users.edit');
Route::patch('/users/{user}', 'UsersController@update')->name('users.update');
Route::delete('/users/{user}', 'UsersController@destroy')->name('users.destroy');
~~~
## RESTful 风格控制器
可以通过命令创建符合RESTful 风格的控制器
~~~
php artisan make:controller 控制器名称 --resource
~~~