【发布时间】:2012-02-10 17:24:16
【问题描述】:
我有一个 Doctrine Entity (News) 来监听事件 prePersist。为此,我使用带有 prePersist 方法的事件监听器。
我的services.yml 看起来像这样:
listener.entity.news:
class: A\BBundle\Listeners\Entity\NewsListener
tags:
- { name: doctrine.event_listener, event: prePersist }
这很好,一切正常。但是文档指出,当调用 persist() 时,会产生 prePersist 事件。然后正如我的配置状态NewsListener 将捕获它并执行一些代码。在我捕获事件的方法中,我应该检查事件是否来自News 实体。这就是我想知道的地方,是否可以告诉 Symfony 侦听特定实体的 prePersist 事件,然后将其传递给我的侦听器?
目前(据我了解),每当学说产生prePersist 事件时,所有听众都会收到通知。最好是说哪些侦听器应该侦听哪些事件生成器,即使这应该是可选的,而不是通知所有人并让他们过滤他们需要的那些?
我希望我的问题是正确的。
【问题讨论】:
标签: php events doctrine symfony