TAL verschachtelte Daten, wie anzeigen...

Django, Flask, Bottle, WSGI, CGI…
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

TAL verschachtelte Daten, wie anzeigen...

Beitragvon jens » Freitag 14. Oktober 2005, 12:23

Ich hab Daten aus zwei SQL-Tabellen, die mit IDs miteinander verknüpft sind. Diese möchte ich über TAL anzeigen.
Ich weiß aber nicht den einfachsten Weg. Soll ich die Daten per Hand vorher "verknüpfen" ???

Bsp.:

Code: Alles auswählen

data1 = [
    {"id": 1, "name": "eins"},
    {"id": 2, "name": "zwei"},
]

data2 = [
    {"parend_id": 1, "item": "Blabla"},
    {"parend_id": 1, "item": "Blabla2"},
    {"parend_id": 2, "item": "in 2"},
]


Das Ergebniss soll quasi so aussehen:

Code: Alles auswählen

eins
    * Blabla
    * Blabla2

zwei
    * in 2


Ich muß irgendwie zwei tal:repeat verschachteln, aber ich weiß nicht wie?

EDIT: Hiernach muß ich es also vorher per Hand verschachteln. Ist das der normale Weg?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Re: TAL verschachtelte Daten, wie anzeigen...

Beitragvon gerold » Freitag 14. Oktober 2005, 14:48

jens hat geschrieben:Ich hab Daten aus zwei SQL-Tabellen, die mit IDs miteinander verknüpft sind. Diese möchte ich über TAL anzeigen.
[...]
Hiernach muß ich es also vorher per Hand verschachteln. Ist das der normale Weg?

Hi Jens!

So wie es Tino erklärt ist es wahrscheinlich der Idealfall. Ja, vorher verschachtel ist besser und schneller als für jede Unterstruktur jeweils wieder eine neue Funktion aufzurufen um zu den Daten zu kommen.

Code: Alles auswählen

data = [
    {
        "id": 1,
        "name": "eins",
        "sub": {
            "item1": "Blabla1",
            "item2": "Blabla2",
        }
    },
    {
        "id": 2,
        "name": "zwei",
        "sub": {
            "item1": "Blabla3"
            "item2": "Blabla4"
        }
    },
]

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Freitag 14. Oktober 2005, 15:03

OK, so hab ich's auch nun gemacht... Ich könnte natürlich auch erst hin gehen und die erste Tabelle Abfragen. Über die Ergebnisse mach ich eine for-Schleife und hol mir dann die passenden Teile aus der zweiten Tabelle. Sind natürlich mehr SQL-Abfragen, aber weniger Python-Aktion.

Ich kann allerdings nicht einsätzen, ob sich das lohnt oder nach hinten losgeht. Kommt wahrscheinlich auf die Anzahl der Daten an, was?


Oder kann man irgenwie die SQL-Abfragen direkt "verschachteln" ???

Hier mal die "SQL-Tabellen" mit den obrigenen super sinnvollen Daten:

Code: Alles auswählen

Tabelle 1
---------------
id     name
--------------
1      eins
2      zwei


Tabelle 2
---------------
id     item
---------------
1      "Blabla"
1      "Blabla2"
2      "in 2"


Wie könnte da eine SQL-Abfrage aussehen?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd

Wer ist online?

Mitglieder in diesem Forum: Baidu [Spider]