Zum Inhalt springen

Mache ich es verkehrt?

Erstellt am 5. Juni 2012 · 1 Antwort · letzte Antwort am 6. Juni 2012

Tags: Fluid, Frage

robsch ·

Hallo,

ich dachte, ich hätte es irgendwie im Griff, aber nun bin ich mir doch nicht mehr so sicher... allerdings bin ich aber auch Typo3-Neuling.

Ich habe mir meine Ext-Datei en selbst erstellt und eigentlich geht auch alles soweit, wie ich es mir vorgestellt habe. Nun bin ich aber bei der Fluid-Template-Gestaltung über ein Problem gestolpert, bei dem ich das Gefühl bekomme, so geht es doch nicht.

Mein Fluid-Problem war: ich habe zwei verschachtelte for-Schleifen. Die äußere ist mit each="{events}" as="event", die inner mit each="{event.date}" as="date". Habe da also eine verschachtelte Objektstruktur. Nun scheint es so zu sein, dass die inner Schleife zu häufig aufgerufen wird: die äußere Schleife scheint die innere Schleife mehrfach pro Element der äußeren Schleife aufzurufen. Und zwar so oft, wie die inner Schleife durchlaufen wurde. Beispiel: äußere Schleife enthält 1 Element, innere 3 - dann wird die innere Schleife nicht ein, sondern dreimal aufgerufen, d.h. es gibt insgesamt 9 Durchläufe in der inneren Schleife. Sollte nicht so sein, oder?

Kann das damit zusammenhängen?: Ich will auf eine externe Datenbank zugreifen, weswegen ich mir gedacht, dass ich mir das mit den Repositorys spare (habe ja noch nicht so den Durchblick). Ich habe im Controller meine eigenen Klassen und Objekte verwendet, die von keinen Extbase-Klassen abgeleitet sind. Ich habe mir gedacht, ich brauche ja nur entsprechende getter-Methoden in den Klassen anzulegen. Hat auch alles soweit funktioniert - bis auf das mit den for-Schleifen. Ich weiß ja nicht, ob das der Grund ist, aber ich vermute es. Muss ich die Klassen unbedingt von den Extbase-Model-Klassen ableiten? Wenn ja, wie geht denn das? Da gibt es ja uid und pid und so, wo soll ich die denn herbekommen?

Kann mir da jemand ein wenig helfen?

Schönen Dank schon mal,
Robert

robsch ·

:o

Diese vervielfachten Schleifendurchläufe liegen doch an etwas anderem. Habe gerade festgestellt, dass eine Query falsch ist. Also, das Problem hat sich so gesehen erledigt.

Trotzdem würde ich gerne wissen, ob meine Klassen von AbstractDomainObject abgeleitet werden sollten. Wenn ja, warum? Wenn es auch ohne geht?