更改默认RESTFul操作laravel

时间:2015-11-03 16:04:51

标签: php laravel

我使用CatController创建了一个名为php artisan make:controller CatController的控制器。 因此它生成了下一个路线列表: * - >生成路由列表的内容在routes.php Route::resource('cat','CatsController');

| Domain | Method   | URI               | Name        | Action                                          | Middleware |
+--------+----------+-------------------+-------------+-------------------------------------------------+------------+
|        | GET|HEAD | /                 |             | Furbook\Http\Controllers\CatController@index   |            |
|        | GET|HEAD | cat               | cat.index   | Furbook\Http\Controllers\CatController@index   |            |
|        | POST     | cat               | cat.store   | Furbook\Http\Controllers\CatController@store   |            |
|        | GET|HEAD | cat/create        | cat.create  | Furbook\Http\Controllers\CatController@create  |            |
|        | DELETE   | cat/{cat}         | cat.destroy | Furbook\Http\Controllers\CatController@destroy |            |
|        | PATCH    | cat/{cat}         |             | Furbook\Http\Controllers\CatController@update  |            |
|        | PUT      | cat/{cat}         | cat.update  | Furbook\Http\Controllers\CatController@update  |            |
|        | GET|HEAD | cat/{cat}         | cat.show    | Furbook\Http\Controllers\CatController@show    |            |
|        | GET|HEAD | cat/{cat}/edit    | cat.edit    | Furbook\Http\Controllers\CatController@edit    |            |

后来我认为最好将其称为CatsController并将URL作为cats/...处理,因此我重命名了控制器,但我仍然拥有相同的默认REST动作URI。

反正有改变吗?我该怎么办?

1 个答案:

答案 0 :(得分:3)

据我所知,make:controller命令只生成控制器文件,而不是任何路由定义。在那里定义的路线看起来像是由Route::resource定义生成的,看起来像这样:

Route::resource('cat', 'CatController');

要使用catsCatsControllers进行操作,您应将其更改为:

Route::resource('cats', 'CatsController');

您可以在RESTful Resource Controllers in the Laravel Documentation上阅读更多内容。