Eloquent 批次更新多筆記錄
不是對一筆記錄多個欄位批次賦值,
而是根據不同條件對不同記錄做不同修改
。
類似 批次插入:
DB::table('users')->insert(array(
array('email' => 'taylor@example.com', 'votes' => 0),
array('email' => 'dayle@example.com', 'votes' => 0),
));
有沒有類似的語句
DB::table('users')->update( array(
array('id'=>1, 'email' => 'taylor1@example.com', 'votes' => 1),
array('id'=>2, 'email' => 'dayle2@example.com', 'votes' => 2),
) , 'id' );
實現的功能是:
根據id修改對應的記錄:
id=1 'email' 修改成'taylor1@example.com', 'votes' 修改成1,
id=2 'email' 修改成'dayle2@example.com', 'votes' 修改為2
。 。 。
ci是有類似的update_batch方法,想轉換成laravel,請多指點了。
框架封裝好的方法目前是沒有的,但是隨手google了一下,在stackoverflow上看到一個和你的這個問題非常匹配的回答,以下複製於stackoverflow,原鏈接http://stackoverflow.com/questions/ 26133977/laravel-bulk-update。
It will Produces:I have created My Custom function for Multiple Update like update_batch in CodeIgniter.
Just place this function in any of your model or you can create helper class and place this function inthis class: