Doctrine 2 preUpdate event
Some time ago I was implementing an event listener for Doctrine 2. While I was testing it I run into an issue where the events would not fire and I troubled me a great deal. More specifically, I would try to save my entities and events such as preUpdate
would simply not seem to work.
The answer however could not be found in the documentation (maybe I just didn't find it). Inside the function executeUpdates
in of doctrine2/lib/Doctrine/ORM/UnitOfWork.php
it says:
if (!empty($this->entityChangeSets[$oid])) {
$persister->update($entity);
}
This means that it looks for any changes to the model and if (and only if) there are any changes it will update the entity and trigger the event.
I opened a pull request for this which aim to clarify the documentation.