我有一个这样的表结构:
具有属性的订阅者:id,状态
我想要一种检查列状态的方法:如果状态更改为"取消订阅",那么我想自动检测这一更改并应用。
工作流程如下:
代码中的任何位置调用$subscriber->status="取消订阅";我想发现它并用它做点什么。
感谢阅读。
我曾使用过laravel的isDirty,但它必须在每个$subscriber之后写入->status="取消订阅";所以它没有做这项工作。
将以下代码添加到您的模型中:
protected static function booted()
{
static::updated(function (Subscriber $subscriber) {
if ($subscriber->wasChanged('status')) {
// Execute your code
}
});
}
或者,您可以使用观察员。