求助 observer 的 updated 内再次 save 导致死循环
1. 系统环境
CentOS + PHP8.2 + MySQL8.0
2.代码框架
wenman框架使用的 illuminate/database 11.33
3.问题
在observer的updated方法内在此掉用save方法会导致死循环,如下代码:
class Device
{
public function updated($device) {
if ($device->isDirty('balance') && $device->balance < 0) {
$device->state = -1;
$device->save()
}
}
}
执行save后再次触发的updated后$device->isDirty('balance')依然为真,这种情况是否有解决方案?
我当前的解决方案是在查一下这条数据在save
关于 LearnKu
推荐文章: