В одном из моих классов записи Doctrine у меня есть метод preSave
, который выполняет проверку. В этой проверке запрос выполняется в той же таблице, к которой принадлежит моя запись. Этот запрос будет извлекать одну запись из таблицы, и я использую гидратированный результат для сравнения с текущей записью, представленной классом.Из класса записей Doctrine запрос на одну и ту же запись из БД перезаписывает свойства этого класса
В некоторых случаях вычитаемый результат гидратации будет такой же, как и у той, с которой я работаю в preSave
. Однако, когда это произойдет, любые изменения, которые я внес в первую запись, возвращаются после завершения запроса.
Почему это происходит? Есть ли обходной путь?