Avevo bisogno di mantenere ulteriori entità quando altre entità sono persistenti o aggiornate. Pertanto ho creato una soluzione ispirata a questo post: https://stackoverflow.com/a/11054101/1526162.Listener non chiamato in Console Comando
config.yml:
services:
transaktion.chain:
class: Foo\BarBundle\Listener\Chain
transaktion.flush:
class: Foo\BarBundle\Listener\Flush
arguments: [ @doctrine.orm.entity_manager, @transaktion.chain ]
tags:
- { name: kernel.event_listener, event: kernel.response, method: onResponse, priority: 5 }
transaktion.listener:
class: Foo\BarBundle\Listener\TransaktionLogger
arguments: [ @transaktion.chain ]
tags:
- { name: doctrine.event_listener, event: postPersist }
- { name: doctrine.event_listener, event: postUpdate }
- { name: doctrine.event_listener, event: preRemove }
Le informazioni PostPersist, eventi postUpdate e preremove stanno aggiungendo alla catena e alla fine, il kernel.response inizia la Scala e si creano le entités aggiuntivi necessari. Tutto funziona bene
Tuttavia, quando continuo a entrare in un comando della console, non funziona. Penso che non ci sia un evento kernel.response. C'è un altro evento utile che funziona con i controller e nei comandi della console?
Ulteriori informazioni: Sto usando Symfony 2.3
Ho già lavorato su questo, ma non sono riuscito a trovare il nome dell'evento giusto per la voce dei tag. Btw: C'è una lista di tutti gli eventi disponibili nella documentazione? –