我在我的 laravel 应用程序中使用Revisionable包来记录对模型的编辑。
此外,我还实现了一个观察者类来监听特定的模型事件(更新、删除、创建等)并执行操作(例如清除缓存等)。该观察者使用boot()
如下方法在模型中实例化:
class Client {
use \Venturecraft\Revisionable\RevisionableTrait;
public static function boot()
{
parent::boot();
Client::observe(new App\Observers\ClientObserver);
}
}
我发现当我boot()
在模型中定义一个方法时,Revisionable Trait 停止工作并且不记录更改——大概是因为它也使用了boot
被模型中的方法覆盖的方法。
我将如何解决这个问题以允许侦听模型事件以及利用 Revisionable 包?