laravel - Laravel apiResources 如何调用具体方法
问题描述
我正在尝试使用 Laravel apiResource,但显然有一些我无法理解的用法。在一条简单的路线中,您有类似的东西
Route::get('user/{id}', 'UserController@show');
其中show是您要调用的方法。
如何指定要在 apiResource 中调用的方法?
目前我有
Route::apiResources(['user' =>'API\UserController']);
它调用UserController中的store方法。我想指定另一个要调用的方法,但例如
Route::apiResources(['user' =>'API\UserController@show']);
不会调用show方法
那么如何指定在 apiResources 中调用哪个方法呢?
解决方案
对于资源,保留show
, store
, update
,index
方法。以下是它的工作方式:
- 在
GET
没有任何 ID 的路由上调用将调用该index()
方法 - 对具有资源 ID 的路由的
GET
调用将调用该show()
方法 - 路由上的
POST
调用将调用store()
方法 PATCH
对带有 ID 的路由的调用将调用该update()
方法
API 资源路由与 Web 资源路由相同,只是它不附带返回视图的方法,即 iecreate()
等edit()
。
如果您需要任何自定义路由,则需要在定义 API 资源路由之前定义所需的路由。我希望这有帮助。更多信息在此处的官方文档中。
推荐阅读
- c# - 在 SelectList 上设置所选值不起作用
- python - 外汇交易算法无法按预期工作
- php - 将 WooCommerce 订单项自定义字段总和保存为新的元数据
- c# - Linq 查询存储为字符串和/或序列化为 Json
- javascript - 为什么字段声明必须在类中,因为它实现了一个接口
- android - RXJava:“Single.subscribe()”的结果被忽略
- node.js - 如何使用切换协议将控制从对话流机器人传递到 Facebook 收件箱?
- django - 如何修复空白页django 2
- java - 如何撤消 Android Studio 中的最后一次配置 gradle?
- wordpress - 如何删除 Wordpress 网站上自动生成的广告?