【发布时间】:2015-10-09 16:31:01
【问题描述】:
我有一个使用 Doctrine 写入数据库的记录器。我需要在 Entity Listener 的 PostPersist、PostUpdate 和 PreRemove 处理程序中记录一些事件。
但是在这些处理程序中,官方不支持 flush 操作(如果忽略它,有时会导致致命错误)。
我遇到了类似的question,但解决方案是将刷新推迟到当前执行的刷新结束,这不适合我,因为我需要在处理程序中插入条目,例如为了在删除操作期间不丢失对象 ID。
我有一个 LogManager 并希望这个 add-log-entry 操作相同 - 无论您是从某个处理程序还是从代码中的其他位置调用它。
我想知道有没有办法在处理程序中保留对象? (可能是通过使用另一个 EntityManager ...)
【问题讨论】:
标签: php symfony doctrine-orm