Dzień dobry.
Mam taki dylemat i związany z nim problem:
Mam tabelkę z rekordami, które w niektórych przypadkach mają swoich rodziców w tej samej tabeli. Np:
| id | patent_id | name | dane dodatkowe_ |
|---|---|---|---|
| 1 | null | kategoria1 | jakieś dane do pominięcia |
| 2 | 1 | kategoria2 | jakieś dane do pominięcia |
| 3 | 1 | kategoria3 | jakieś dane do pominięcia |
| 4 | 3 | kategoria4 | jakieś dane do pominięcia |
Chcę złożyć tą tabelę, do jednego obiektu, jednak nie chcę ładować całej zawartości, jako, że tabela jest duża (tj. ma wiele pól i łączeń wiele do wielu itp.)
Chcę załadować tylko id i name oraz zachować strukturę drzewa, tak bym mógł je elegancko wyświetlić w widoku bez niepotrzebnej szarpaniny.
Proszę o wskazówkę, jak tego dokonać. Dzięki!
PS. dodam, że trochę uprościłem problem.
W przyczywistości pole name jest w innej tabelce, Stworzyłem zapytanie:
gr = GR.objects.raw("SELECT gr.id, gr.parent_id, desc.text FROM `gr` JOIN desc ON desc.id = gr.desc_id;")
Nie wiem, jak wstrzyknąć nazwy (text) do obiektu GR