2011-12-23 61 views
3

如果没有手动设置,我想自动设置一个实体字段。有没有办法检查这个?这些字段有一个默认值,所以我不能简单地比较这个值。我想知道教义是否维护价值是否改变,以及我是否可以获取这些信息。我可以检查prePersist()中的值是否已更改?

而且,prePersist教义当量preInsert的原则1?我怎样才能确保我只在create语句上运行代码?

感谢

回答

3

prePersist事件(docs about prePersist)当您在一个实体调用Doctrine\ORM\EntityManager#persist被触发。 如果您需要检查变为一个实体,我建议你来检查onFlush事件(docs about onFlush)。在那里,您可以使用Doctrine\ORM\UnitOfWork API获取您应用于该实体的任何更改。在致电Doctrine\ORM\EntityManager#persist

相关问题