题
我正在处理以下代码:
// BaseModel
abstract class BaseModel extends Eloquent {
public static function boot()
{
parent::boot();
static::saving(function($model)
{
echo 'Fired BaseModel';
});
}
}
// Project (extends BaseModel)
class Project extends BaseModel {
public static function boot()
{
parent::boot();
static::saving(function($model)
{
echo 'Fired Project';
});
}
}
将新的/现有的数据保存到项目模型时,这只会给我 Fired BaseModel
. 。它根本不会触发项目模型上的保存事件。有没有办法克服这个限制?
解决方案
在调用父事件之前先触发子事件应该可以解决这个问题
// Project (extends BaseModel)
class Project extends BaseModel {
public static function boot()
{
static::saving(function($model)
{
echo 'Fired Project';
});
parent::boot();
}
}
不隶属于 StackOverflow