加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

什么是 Laravel 的资源控制器?

发布时间:2020-12-14 19:33:19 所属栏目:大数据 来源:网络整理
导读:我最近在 StackOverflow 上发现了很多询问什么是 Laravel Resource 控制器的问题。 本文解释了这个基本概念,继续往下看。 Laravel 资源型控制器 资源控制器就是 Laravel 控制器的一种,具有创建、读

我最近在 StackOverflow 上发现了很多询问什么是 Laravel Resource 控制器的问题。 本文解释了这个基本概念,继续往下看。

Laravel 资源型控制器

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

php artisan make:controller PhotoController --resource

  

该命令将在您的控制器目录中创建一个 PhotoController.php 文件,并将自动创建 7 种方法 index ,show,create,store,edit,update,destroy。 所有这些方法都是空的,您必须为每个操作添加逻辑。 默认情况下,当您执行命令时,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 控制器的疑问,并希望在您的下一个项目中尝试。 希望这一小段内容能帮助您更好地理解它们。

更多学习内容请访问:

腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读