gpt4 book ai didi

Symfony2/Doctrine - postFlush

转载 作者:行者123 更新时间:2023-12-04 02:21:33 25 4
gpt4 key购买 nike

如果您看到我之前的问题,这在某种程度上与它相关联,但却是一个新问题。所以我有一个实体,并且有一个与之相关联的监听器。在我的 createAction 中,我创建了我的对象,然后将其持久刷新到我的数据库中。在我的监听器中,我设置了一个 postFlush 函数

public function postFlush(PostFlushEventArgs $args)
{
$em = $args->getEntityManager();

foreach ($em->getUnitOfWork()->getScheduledEntityDeletions() as $entity) {
if ($entity instanceof AvailabilityAlert) {
var_dump("TEST");
$this->api_service->addFlightsAction($entity);
}
}
}

我在这个函数中试图做的是获取刚刚刷新的实体。我已经尝试了 getUnitsOfWork 的所有不同操作,例如getScheduledEntityDeletions,但对于它们中的任何一个,我都无法进入 var_dump 发生的位置。

我将如何在这个 postFlush 函数中获取刷新的实体?

最佳答案

根据此处的 Doctrine2 文档:http://doctrine-orm.readthedocs.org/en/latest/reference/events.html您不能在 PostFlush 事件中调用刷新的实体。

但是您可以拆分您的逻辑:使用 OnFlush 事件获取这些实体,然后在刷新成功时将其传递给 PostFlush

关于Symfony2/Doctrine - postFlush,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28589633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com