gpt4 book ai didi

symfony - 在我的代码中触发 Doctrine 生命周期事件

转载 作者:行者123 更新时间:2023-12-02 06:38:01 24 4
gpt4 key购买 nike

问题:在实体数据可用的情况下,如何在我的代码中触发 Doctrine 生命周期事件?

详细信息

  • 我在 Doctrine postPersistpostUpdate 事件上有一个活跃的监听器。
  • 我无法修改/覆盖此监听器。
  • 在代码中的某些地方,出于性能原因,我使用 DBAL 来保存数据,而不是 ORM 方法。
  • 我想坚持使用相同的事件系统。

预先感谢您的帮助。

最佳答案

扩展@Cerad答案,这里有一个非常基本的示例代码来实现结果(触发 Doctrine LifeCycle 事件)。此示例假设我们位于 Symfony Controller 中:

use Doctrine\ORM\Event\LifecycleEventArgs;
// ...
$user = new AppBundle\Entity\User();
// ... do something with the user
$entityManager = $this->getDoctrine()->getManager();
$eventManager = $entityManager->getEventManager();
$eventArgs = new LifecycleEventArgs($user, $entityManager);
$eventManager->dispatchEvent(\Doctrine\ORM\Events::postPersist, $eventArgs);

关于symfony - 在我的代码中触发 Doctrine 生命周期事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35603696/

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