Symfony Doctrine 事件订阅者未在 debug:event-dispatcher 中列出

Symfony Doctrine event subscriber not listed in debug:event-dispatcher

Symfony v3.3.4, Doctrine ORM v2.5.6

我已经为一个学说实体创建了一个事件订阅者:

AppBundle\EventListener\LivreSubscriber:
    tags:
        - { name: doctrine.event_subscriber }

效果很好!但是很长一段时间我都认为它不起作用,因为 debug:event-dispatcher 命令中没有列出侦听器:

$ docker-compose exec phpapp bin/console debug:event-dispatcher doctrine.event_subscriber

[WARNING] The event "doctrine.event_subscriber" does not have any registered listeners.

事件监听器也是如此。 还有:监听器和订阅者都没有在 symfony 分析器(事件部分)中列出...... 所以它可以工作,但奇怪的是调试工具中没有列出侦听器,不是吗?

能否告诉我您的项目是否有相同的行为...

这个订阅者是 doctrine 订阅者,不是 symfony。 Doctrine 使用它自己的事件管理器,它不与 symfony 事件调度器连接。 console debug:event-dispatcher 仅列出在 symfony 事件调度程序中注册的订阅者。