У меня есть приложение, в котором я хотел бы редактировать уже существующие сущности, но все изменения должны быть сделаны только после того, как пользователь явно нажмет «Сохранить». Поэтому, пока он редактирует, ничего не происходит с оригиналом.
Обычно, это не будет проблемой, но, поскольку я сохраняю изменения в Ajax, а не в Symfony, мне нужно это обойти.
Работает отлично, за исключением части, в которой предполагается записать идентификатор оригинальной сущности в отредактированную (оригинал удаляется при сохранении изменений).
Сначала я подумал, чтоЯ бы скопировал все поля из отредактированного объекта в оригинал, но, вероятно, после добавления полей никто не скажет приложению также скопировать эти поля.
Вот соответствующий код:
$editedEntity->setId($originalEntity->getId());
$em = $this->getDoctrine()->getManager();
$em->remove($originalEntity);
$em->flush();
Tl; dr
Как скопировать идентификатор объекта в другой?