Mam problem z sklonowaniem obiektu A i ponownym zapisie go do tej samej tabeli jako nowy wiersz (w między czasie może być zmieniona pewna właściwość, ale większość jest taka jak u klona).
Robię tak:
$B = clone $inst->getObjectA(); // w entity ObjectA mam nadpisaną metodę __clone w której id ustawiam na null $em->detach($B); $em->persist($B); $em->flush();
próbowałem również bez detach... Błędu żadnego nie dostaję, ale obiekt nie jest kopiowany. Może to jakiś bug?

Próbowałem również rozwiązania z http://stackoverflow.com/questions/9071094...w-in-doctrine-2
niestety zamieszczony tam unset wyrzuca błąd o próbie dostępu do atrybutów prywatnych (dość logiczne).
W związku z tym moje pytanie brzmi - jak poprawnie skopiować obiekt A do tej samej tabeli?
UPDATE
Nie mam pojęcia czy to coś z metodą __clone czy może bug w Symfony, ale z problemem można sobie poradzić pisząc metodę np. copyFrom w kopiowanej klasie, następnie utworzyć nową instancję tej klasy i wywołać metodę. Przykładowo:
$newInstance = new Cars(); $newInstance->copyFrom($original); //dalej standardowo, czyli $em->persist($newInstance); $em->flush();
natomiast w samej metodzie copyFrom napisać ręczne kopiowanie wartości np.:
$this->setName($original->getName()); $this->setPrice($original->getPrice()); itd...
Pytanie nadal aktualne, bo powinno się to samo dać zrobić przy pomocy klonowania, tylko dlaczego się nie da?