Ho rilevato questo problema "grazie" ad un'eccezione che ho ottenuto:Symfony 2 - a filo in postUpdate evento fuoco PreUpdate
Catchable Fatal Error: Argument 3 passed to
Doctrine\ORM\Event\PreUpdateEventArgs::__construct()
must be an array, null given, called in
/.../vendor/doctrine/lib/Doctrine/ORM/UnitOfWork.php on line 804
and defined in
/.../vendor/doctrine/lib/Doctrine/ORM/Event/PreUpdateEventArgs.php line 28
Sto lavorando su un progetto che requieres una logica specifica:
Quando il campo order
nell'entità book
viene modificato, devo aggiornare il campo books_order_modified_at
nell'entità padre bookstore
(questo campo mi consente di sapere se l'ordine dei libri in una libreria è stato modificato).
Ho deciso di farlo in un listener di eventi poiché ci sono molti punti nel codice che potrebbero cambiare l'ordine dei libri.
non ho trovato alcun modo per aggiornare un'entità correlata da preUpdate
evento, quindi ho un campo privato della classe ascoltatore che io uso per raccontare l'evento postUpdate
per aggiornare il relativo bookstore
entità.
Il mio problema è che quando si esegue l'evento preUpdate
dell'entità book
viene generato.
Quando controllo il set di modifiche, contiene solo il campo modified_at
, ma ha lo stesso valore prima e dopo.
Se qualcuno ha un'altra idea di come risolvere il problema - ottimo.
In caso negativo - qualsiasi idea in che modo è possibile impedire l'attivazione dell'evento preUpdate
quando viene chiamato il flush nell'evento postUpdate
??
Avete trovato una soluzione per questo problema? – ownking
No, in realtà ho risolto il problema utilizzando il server in tempo reale (node.js), quindi non sono più alla ricerca di una soluzione. Tuttavia, se ne hai, sarà interessante vederlo. Grazie! – guyaloni