У меня есть объект Doctrine (новости), который я прослушиваю для события 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 для конкретной сущности, а затем передавать их моему слушателю?
В настоящее время (насколько я понимаю) всякий раз, когда доктрина порождает преперсист
] событие ВСЕ слушатели уведомляются. Разве не лучше сказать, какие слушатели должны слушать, какие генераторы событий, даже если это должно быть необязательным, вместо того, чтобы уведомлять всех и позволять им фильтровать те, которые им нужны?
Надеюсь, я правильно задал свой вопрос.