Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony][Symfony2] Kopiowanie nodów wraz z potomkami, Tree behavior extension dla Doctrine 2
korniks
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.03.2012

Ostrzeżenie: (0%)
-----


Witam,

w swoim projekcie wykorzystuje Tree behavior extension dla Doctrine 2. Chciałem móc kopiować i wycinać poszczególne nody do nowego miejsce w drzewie. Zrobienie "wycinania" noda do innego miejsca było dość łatwe, wystarczyło bowiem zmienić wartość atrybutu parent w obiekcie. Niestety z kopiowaniem mam już problemy.

Próbowałem z klonować obiekt, a następnie go dodać do bazy:

  1. $node_clone = clone $node;
  2. $node_clone->setParent($newParent);
  3.  
  4. $em->persist($node_clone);
  5. $em->flush();


Niestety, tak jak przypuszczałem skopiował samego noda bez dzieci i relacji. Z tego co wyczytałem brak relacji można załatwić po przez napisanie funkcji magicznej __clone(). Jednak co z dziećmi?

Istnieje jakiś szybki i wydajny sposób na przekopiowanie noda wraz z dziećmi i wszystkimi relacjami bez konieczności wyciągania "ręcznie" dzięci z każdego zagnierzdźenia?

Pozdrawiam.

Ten post edytował korniks 26.05.2012, 12:22:36
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 20:34