zoukankan      html  css  js  c++  java
  • 什么是 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架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)

  • 相关阅读:
    SQL复制表
    文件流 修改二进制文件
    C#代码开启或关闭window service
    程序员之间的相处
    .NET实现图片下载(后台)
    当要存入数据的数据为null时 必须转换成DBNull.Value
    Maven第三篇【Maven术语、pom.xml介绍】
    Maven第二篇【Idea下使用Maven】
    Maven第一篇【介绍、安装、结构目录】
    SSM整合开发
  • 原文地址:https://www.cnblogs.com/a609251438/p/12715548.html
Copyright © 2011-2022 走看看