在下面的代码中,我尝试保存模型的某些字段,然后在调用save方法之前,使用同一模型的另一个实例更新其中一个字段。
但是is_owner
甚至在保存方法调用之后仍为0,但是其他字段得到更新。
$deviceAssignedData = \App\DeviceAssignment::where('user_id', $user_id)->where('device_id', $device->id)->latest('created_at')->first();
if($deviceAssignedData){
\App\DeviceAssignment::where('device_id', $device->id)->update(['is_owner' => 0]);
$deviceAssignedData->acknowledge_status = 1;
$deviceAssignedData->acknowledge_date = Carbon::now();
$deviceAssignedData->is_owner = 1;
$deviceAssignedData->save();
}
有人可以建议我在这里做什么错吗?
注意:在一种情况下,当所选行的
is_owner
先前为0
时,其工作正常,然后save()方法将其完美地更新为1
。
答案 0 :(得分:0)
您需要将is_owner
添加到模型中的$fillable
变量中,然后才能使用->update()
函数。
class DeviceAssignment extends Model
{
protected $fillable = [
'is_owner',
];
}