【发布时间】:2018-08-29 11:52:50
【问题描述】:
我在我的路由上使用了内置的resource 方法,用于特定控制器生成标准CRUD 路由,但我不知道如何更新资源。我正在尝试创建一个 API,所以我使用的是App\Http\Resources,而不仅仅是模型。这是我的控制器中尝试更新的代码,但它不起作用:
public function update(Request $request, Sample $sample)
{
$sample = Sample::where('id', $request->id)->update($request->all());
}
我正在使用邮递员检查我的路线,并且我正在尝试将原始更新 JSON 的 put 请求发送到 app.dev/api/samples/1 但在将 get 请求发送到相同的 url 之后,我可以看到值没有改变。
如何使此更新生效?
编辑:这是我的 api.php 路由文件
Route::resource('samples', 'SampleController');
【问题讨论】:
-
为什么要添加 Sample 对象作为函数参数而不在函数内部使用它?
-
这是我创建资源控制器时的样子
-
如果你没有在函数中使用它并且只是删除它,一切看起来都正确,你可以添加你的 api.php 内容吗
-
还有一件事,你在请求中传递了 id 吗?
-
我试过了,但不能解决问题
标签: laravel request postman crud api-design