zoukankan      html  css  js  c++  java
  • 资源控制器 RESTful 详细讲解查看laravel8 控制器文档

    资源控制器

    1、Laravel 的资源控制器可以让我们很便捷地构建基于资源的 RESTful 控制器,例如,你可能想要在应用中创建一个控制器,用于处理关于文章存储的 HTTP 请求,使用 Artisan 命令 make:controller,我们可以快速创建这样的控制器:

    php artisan make:controller PostController --resource

    2、接下来,可以通过 resource 方法为该控制器注册一个资源路由:

    Route::resource('posts', AppHttpControllersPostController::class);

    3、这个路由声明包含了处理文章资源对应动作的多个路由,相应地,Artisan 生成的控制器也已经为这些动作设置了对应的处理方法。

    你可以通过传递数组到 resources 方法从而一次注册多个资源控制器:

    Route::resources([
       'photos' => PhotoController::class,
       'posts' => PostController::class,
    ]);

    资源控制器处理的动作

    请求方式URI路径控制器方法路由名称
    GET /posts index posts.index
    GET /posts/create create posts.create
    POST /posts store posts.store
    GET /posts/{post} show posts.show
    GET /posts/{post}/edit edit posts.edit
    PUT/PATCH /posts/{post} update posts.update
    DELETE /posts/{post} destroy posts.destroy

    4、指定资源模型

    如果你使用了路由模型绑定,并且想要在资源控制器的方法中对模型实例进行依赖注入,可以在生成控制器的使用使用 --model 选项:

    php artisan make:controller PostController --resource --model=Post

    可以看到,如果 Post 类不存在的话会询问并自动创建,同时 PostController 类中的方法参数也变成了模型实例

    5、API 资源路由

    声明被 API 消费的资源路由时,你可能需要排除展示 HTML 模板的路由,如 create 和 edit,为了方便起见,Laravel 提供了 apiResource 方法自动排除这两个路由:

    Route::apiResource('posts', PostController::class);

    同样,你可以传递数组到 apiResources 方法以便一次注册多个 API 资源控制器:

    Route::apiResources([
      'photos' => PhotoController::class,
      'posts' => PostController::class,
    ]);

    6、

    要想快速生成不包含 create 或 edit 方法的 API 资源控制器,可以在执行 make:controller 命令时使用 --api 开关:

    php artisan make:controller API/PostController --api
    7、嵌套资源
  • 相关阅读:
    javasscript学习笔记 之 数组学习二 数组的所有方法
    JavaScript学习笔记之 数组方法一 堆栈 和队列
    JavaScript学习笔记:检测数组方法
    _bzoj1500 [NOI2005]维修数列【真·Splay】
    _bzoj1012 [JSOI2008]最大数maxnumber【Fenwick Tree】
    _bzoj1010 [HNOI2008]玩具装箱toy【斜率优化dp】
    _bzoj3224 Tyvj 1728 普通平衡树【Splay】
    _bzoj2002 [Hnoi2010]Bounce 弹飞绵羊【分块】
    _bzoj1001 [BeiJing2006]狼抓兔子【平面图】
    _bzoj1036 [ZJOI2008]树的统计Count【树链剖分】
  • 原文地址:https://www.cnblogs.com/gaogaoxingxing/p/15120102.html
Copyright © 2011-2022 走看看