问答详情
源自:3-8 模型修改器-+自动完成

请假各位大神

为什么用User::where('id',16)->update(['sex'=>1])这种方法就不能自动完成更新时间呢

提问者:天桥涂鸦 2017-07-30 19:27

个回答

  • 小白不是兔
    2017-07-31 07:02:24

    User::update(['sex'=>1],['id'=>16]); //调用静态方法update()会自动调用save()方法完成更新

    或者直接调用save()方法:

    User::where(['id'=>16])->save(['sex'=>1);

    只有save()方法才会自动触发你在模型中创建的修改器: 

    修改器的代码,我是的猜测哟~~

    protected function setSexAttr($value){ 
     $arr = [0=>'男', 1=>'女', 2=>'保密']; 
     return $arr[$value];
    }