Как можно в doctrine/Symfony указать порядок обновления данных в БД при единой транзакции?
В таблице стоит проверка уникальности, при которой состояние объекта можно быть только одним. Чтобы поменять состояние, нужно сначала его убрать со старой записи, а потом присвоить другой. Но при одной транзакции, doctrine пытается сначала присвоить состояние...
/** @var IpAddressAssigned $oldPrimaryIp */
$oldPrimaryIp = $port->getIpAddressesAssignedCollection()->filter(
function ($value, $key){
/** @var IpAddressAssigned $value */
return $value->isPrimary();})->first();
$oldPrimaryIp->setSecondary();
$newipAddressPrimary->getIpAddressAssigned()->setPrimary();
$this->em->flush();
При таком коде, доктрина сначала пытается выполнить:
$newipAddressPrimary->getIpAddressAssigned()->setPrimary();
Спасибо.