Laravel更新方法不存在

Laravel update method does not exist

根据文档,我应该能够使用 update() https://laravel.com/docs/5.4/queries#updates 更新记录,但我收到错误 Method update does not exist

Client::findOrFail($id)->update($request->all());

知道为什么吗?

我认为这是因为您在单个模型对象上使用了查询生成器的方法。您不能这样做,因为 findOrFail 方法 returns 是一个与查询构建器的方法无关的对象。

这样做:Client::findOrFail($id)->first()->fill($request->all())->save();

试试这个:

Client::find($id)->update($request->all());

或者你可以使用这个:

Client::where('id',$id)->first()->update($request->all());