什么是 Laravel 的资源控制器?

24 篇文章 1 订阅
8 篇文章 0 订阅

Laravel 资源型控制器

资源控制器就是 Laravel 控制器的一种,具有创建、读取、更新和删除资源(或模型)的所有方法。 您可以使用此 artisan 命令创建资源控制器:

php artisan make:controller PhotoController --resource

该命令将在您的控制器目录中创建一个 PhotoController.php 文件,并将自动创建 7 种方法 index ,showcreatestoreeditupdatedestroy。 所有这些方法都是空的,您必须为每个操作添加逻辑。 默认情况下,当您执行命令时,Laravel 将使用控制器中的模型名称,例如。 Photo 模型将命名为 PhotoController,如果您想使用其他模型,则可以使用:

php artisan make:controller PhotoController --resource --model=Photo

现在,新控制器将使用在 --model 标识中设置的内容。

您也可以使用 --api 标识而不是 --resource 标识为 API 路由创建控制器。 这将创建除 create 方法和 edit 方法之外的所有方法,因为 api 调用不需要它们。

Laravel 资源型路由

Laravel 还提供了一种简单的方法来创建资源路由:

Route::resource('photos', 'PhotoController');
//  GET    /photos            PhotoController@index
//  GET    /photos/create     PhotoController@create
//  POST   /photos            PhotoController@store
//  GET    /photos/{id}       PhotoController@show
//  GET    /photos/{id}/edit  PhotoController@edit
//  PUT    /photos/{id}       PhotoController@update
//  DELETE /photos/{id}       PhotoController@destory

此方法将创建从浏览器访问每个操作所需的所有 7 条路由。 您也可以自定义所需的某些路由,也可以保留不需要的路由。

Route::resource('photos', 'PhotoController')->only(['index', 'show']);

Route::resource('photos', 'PhotoController')->except(['create', 'store', 'update', 'destroy']);

结论

希望您已经消除了对 Laravel Resources 控制器的疑问,并希望在您的下一个项目中尝试。 希望这一小段内容能帮助您更好地理解它们。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值