postUpdate和postPersist之间的区别在于学说

时间:2014-08-07 09:03:07

标签: php database symfony doctrine-orm event-handling

Doctrine的事件监听器类中postUpdate和postPersist事件之间的区别是什么?根据我的理解,必须坚持更新和插入。当postPersist事件可以处理这个时,有什么好处有postUpdate?

1 个答案:

答案 0 :(得分:11)

因为您应该仅在更新时处理某些逻辑,例如。 而且来自学说的文档:

  

postPersist - 在实体持久化后,实体发生postPersist事件。它将在数据库插入操作后调用。 postPersist事件中提供了生成的主键值。

     

postUpdate - postUpdate事件发生在对实体数据的数据库更新操作之后。它不是为DQL UPDATE语句调用的。

你现在看到了区别吗? postPersist事件仅在INSERT次操作后启动。