2016-05-16 6 views

答えて

2

アクティブレコードを使用する場合は、データベースで直接更新を実行しないでください。まず、それを更新し、データベースからレコードを引っ張っ:

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

あなたの代わりに、データベースに直接更新を行う場合は、ORMの機能のいずれも(例えば、発射イベントや感動親として)をトリガしません。

1

更新:条件に対応

Model::where("x",1)->where("y",2)->update(array('key' => 'new_value', ...)); 

最初の行:

Model::where("x",1)->where("y",2)->first()->update(array('key' => 'new_value', ...)); 
0

確かに、単に行をフェッチした後、更新それはいつものように。

SomeModel::where('somecondition', 'somevalue') 
     ->where('someothercondition', 'someothervalue') 
     ->first() 
     ->update(['somecolumn' => 'somenewvalue']); 
関連する問題