sql >> Base de Datos >  >> RDS >> PostgreSQL

Symfony3 guarda cada actualización en la base de datos

En primer lugar, no necesita implementar este rey de la lógica usted mismo. Doctrine rastrea internamente las inserciones, actualizaciones, cambios de campo y eliminaciones de entidades, y crea los eventos correspondientes que puedes escuchar. Por ejemplo, cuando crea una nueva Info entidad y persistirla, Doctrine enviará prePersist evento cuando llamas a flush operación. Puede crear un suscriptor de eventos para suscribirse a dichos eventos y hacer su lógica allí.

Para comprender completamente los eventos del ciclo de vida de Doctrine, consulte la documentación oficial de la doctrina:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/events.html

Creación de suscriptores de eventos descrita en la documentación de Symfony:http://symfony.com/doc/current/doctrine/event_listeners_subscribers.html#creating-the-subscriber-class

También puede probar el paquete de terceros existente que registrará las inserciones, actualizaciones y eliminaciones de entidades:https://github .com/simplethings/EntityAuditBundle También es compatible con el control de versiones.