Zum Inhalt springen

Bei einer Abfrage Werte aus einer zweiten Tabelle berücksichtigen

Erstellt am 2. April 2014 · 2 Antworten · letzte Antwort am 3. April 2014

Tags: Datenbank, Frage

sobi555 ·

Hi zusammen!
Nach was muss ich am besten suchen, wenn ich folgendes möglichst einfach lösen möchte:

Ich habe ein Objekte "Auto" (domain_model_auto), mit dem verschiedene Eigeschaften (domain_model_sicherheit) verknüpft sind (auto_sicherheit_mm). Z.B. ABS oder ESP.

Mit findAll() bekomme ich alle Objekte. Wie ändere ich es, damit er nur die Objekte findet, welche auch ABS haben?
FindBy... funktioniert ja nicht, da es sich ja um eine andere Tabelle handelt.
In Fluid das zu überprüfen, bringt auch nichts, da sonst der Seitennavigator nicht mehr stimmt.

Mit Join und Co kann ich das natürlich lösen, aber... vielleicht gibt es ein anderen Weg? - Irgendwelche klugen Suchwörter/Lösungen für mich?

Danke (fürs lesen und ggf. Antworten)

Schweriner ·

Ich selber weiß jetzt leider auch nicht so genau ob Du dafür vielleicht eine Funktion im Repository schreib musst, aber hast Du mal sowas probiert wie findBySicherheit(\TYPO3\meineExt\Model\Sicherheit) oder so?

jenses ·

Schau dir mal die EXT: sjr_offers an,
dort speziell das OfferRepository und das model Demand.
Die Ext ist zwar schon etwas älter und benutzt keine namespaces,
aber das Prinzip für solche Abfragen über mehrere verknüpfte Tabellen wird deutlich.

Und es ist wohl von Vorteil,
wenn man nicht vorher jahrelang piBase-Extensions programmiert hat -
das dabei gesammelte Wissen kann man nämlich in die Tonnen hauen,
und man fängt schön wieder bei Null an...