无法从BaseObserver触发事件

时间:2014-06-24 03:06:48

标签: php inheritance laravel eloquent

我有以下代码:

BaseObserver.php

class BaseObserver {

    public function saving(Eloquent $model)
    {
        exit('BaseObserver');
    }
}

ProductObserver.php

class ProductObserver extends BaseObserver {

    public function saving(Eloquent $model)
    {
        exit('ProductObserver');
    }
}

observers.php

Product::observe(new ProductObserver);

在上面的场景中,从不触发BaseObserver保存事件,而ProductObserver中的保存事件正常工作。

我应该采取什么特殊措施让BaseObserver保存事件触发器在ProductObserver之前触发?

1 个答案:

答案 0 :(得分:0)

从孩子的saving方法中调用父级的saving方法:

public function saving(Eloquent $model)
{
    parent::saving($model);

    exit('ProductObserver');
}