我正在使用Doctrine2,我有相当数量的模型对象。
所有对象都从一个名为BaseModel的基类继承,我需要每个对象在构造时调用一个方法。由于Doctrine不会调用__construct,我不能使用它。
从我所看到的,如果我想使用生命周期方法,我将不得不修改我的所有对象,它们超过50个......
有没有办法在一个地方定义一个共同的生命周期方法?
答案 0 :(得分:2)
将BaseModel
设为mapped superclass appropriate life cycle callbacks,例如
/** @MappedSuperclass @HasLifecycleCallbacks */
class BaseModel
{
/** @PostLoad */
public function doStuffOnPostLoad()
{
// do stuff
}
}