假设我有模型A
,B
,C
和D
。现在我想听他们的created
事件。通常,我会去我的AppServiceProvider
并为每个模型添加事件,如下所示:
public function boot()
{
A::created(function ($a) {
//some code
});
B::created(function ($b) {
//some code
});
C::created(function ($c) {
//some code
});
D::created(function ($d) {
//some code
});
}
代码是一样的,我想让这个过程更快,因为我实际上有70个++模型。那么有没有办法将单个函数绑定到我所有模型的created
事件而不必逐个执行?
编辑:结果我想要的已经在this question,但由于它已经被回答我不想删除它。
创建一个基础Model类并继承你的模型,A,B,C和D.你的基本模型的save方法将触发一个事件,比如model_create,你将只在一个地方监听该事件。这样您就可以为您的所有模型处理事件。