是否可以在(例如)prePersist事件中分离实体?
public function prePersist(LifecycleEventArgs $args)
{
$entity = $args->getEntity();
$em = $args->getEntityManager();
$em->detach($entity);
}
这样实体就不会分离。 prePersist
功能在服务中:
abc.saver:
class: App\AbcBundle\Layer\Saver
arguments: ["@doctrine.orm.entity_manager"]
tags:
- { name: doctrine.event_listener, event: prePersist }
P.S。我使用onFlush
事件解决了这个问题:
foreach ($uow->getScheduledEntityInsertions() as $entity)
{
$em->detach($entity);
}
但我很有意思如何使用doctrine pre*
行为(生命周期事件)来实现这一目标?