2012-12-07 33 views
7

jest możliwe wykorzystanie pewnego rodzaju polimorficznego powiązania z różnymi obiektami właściciela w Doctrine 2? Mam na myśli to, że na przykład jednostka ImageGroup jest własnością różnych podmiotów: artykułu, albumu, postu, komentarza itp. Zatem w tabeli ImageGroup powinny znajdować się atrybuty "ownerId" i "ownerType", gdzie "ownerType" jest dyskryminatorem.Polimorficzne powiązanie z różnymi obiektami właściciela w Doctrine 2

jestem już przy użyciu Class Table Inheritance a także Superclass mapping w innych związkach obiektów w moim projekcie, ale każde z nich pasuje do tego problemu, jeśli się nie mylę. Ponieważ w takich sytuacjach odesłane obiekty są dziedziczone.

Czytałem odpowiedzi na skojarzenia polimorficzne tutaj, ale nie znalazłem odpowiedzi na mój przykład.

W moim przykładzie nie ma w ogóle spadku. Proszę o pomoc? Z góry dziękuję!

Odpowiedz

3

To, czego szukasz, to strategy pattern, które w zasadzie pozwala na uzyskanie słabego połączenia między Twoimi obiektami a obiektami, które chcesz odwołać, takimi jak ['name' => 'EntityName', 'identifier' => 123].