Home > Article > Backend Development > laravel Eloquent ORM 批量更新数据
有一个用户地址表
用户新增地址的时候 会把这个地址设置为 默认地址 为1
<code> $UserAddress -> user_id = $user_id; $UserAddress -> user_name = $name; $UserAddress -> apart = $arrayEle; $UserAddress -> is_default = 1; if( $UserAddress -> save()){ return response()->json(array( 'status' => '1', 'msg' => '创建新地址成功')); }else{ return Redirect::back()->withInput()->withErrors('保存失败!'); } </code>
创建地址成功后 需要把 当前用户其他的地址的 is_default 的字段 设置为0
因为是保存所有用户的地址;
需要查询 当前用户的所有地址 批量更新旧的地址 的 is_default 的字段 设置为0
改怎么批量更新呢
有一个用户地址表
用户新增地址的时候 会把这个地址设置为 默认地址 为1
<code> $UserAddress -> user_id = $user_id; $UserAddress -> user_name = $name; $UserAddress -> apart = $arrayEle; $UserAddress -> is_default = 1; if( $UserAddress -> save()){ return response()->json(array( 'status' => '1', 'msg' => '创建新地址成功')); }else{ return Redirect::back()->withInput()->withErrors('保存失败!'); } </code>
创建地址成功后 需要把 当前用户其他的地址的 is_default 的字段 设置为0
因为是保存所有用户的地址;
需要查询 当前用户的所有地址 批量更新旧的地址 的 is_default 的字段 设置为0
改怎么批量更新呢
创建地址成功后获取一个自增id$id
UserAddress::where(['user_id'=>$user_id])->where('id','!=',$id)->update(['is_default'=>0]);