laravel 5.1:如何仅使用 where 子句更新一行?

Ham*_*our 4 laravel laravel-5

我想仅使用 where 子句更新一行。我没有行 ID,只有 2 个 where 子句。是否可以?(用雄辩的方式)

->where("x",1) ->where("y"=2)
Run Code Online (Sandbox Code Playgroud)

Jos*_*ber 8

使用 Active Record 时,切勿直接在数据库中执行更新。首先从数据库中提取记录,然后更新它:

Model::where(['x' => 1, 'y' => 2])->first()->update([...]);
Run Code Online (Sandbox Code Playgroud)

如果您直接在数据库中进行更新,则不会触发任何 ORM 功能(例如触发事件或触摸父级)。