15,.模型修改和查询

一.数据修改

1.使用 get()方法通过主键获取数据,然后通过 save()方法保存修改,返回布尔值;

    $user=UserModel::get(118);
    $user->username='李黑'; 
    $user->email='lihei@163.com';
    $user->save();

2.通过 where()方法结合 find()方法的查询条件获取的数据,进行修改;

    $user = UserModel::where('username', '李黑')->find();
    $user->username    =    '李白';
    $user->email    =    'libai@163.com';
    $user->save();        


3.save()方法只会更新变化的数据,如果提交的修改数据没有变化,则不更新;

4.但如果你想强制更新数据,即使数据一样,那么可以使用 force()方法;
    $user->force()->save();

5.Db::raw()执行 SQL 函数的方式,同样在这里有效;

    $user->price    =    Db::raw('price+1');

6.    如果只是单纯的增减数据修改,可以使用 inc/dec;

    $user->price    =    ['inc', 1];

7.直接通过 save([],[])两个数组参数的方式更新数据;

    $user->save([

    'username'=>'李黑',

    'email'=>'lihei@163.com'
    ],
    [
    'id'=>118
    ]);

8.通过 saveAll()方法,可以批量修改数据,返回被修改的数据集合;

    $list = [

    [
    'id'=>118, 'username'=>'李白', 
    'email'=>'libai@163.com'
    ], 
    [
    'id'=>128,
    'username'=>'李白', 
    'email'=>'libai@163.com'
    ],
    [
    'id'=>129, 
    'username'=>'李白', 
    'email'=>'libai@163.com']
    ];