Ich habe eine Tabelle namens Landmarken und eine Tabelle namens Kategorien mit einer HABTM-Beziehung zueinander. Ich versuche, mit dem folgenden Code für eine bestimmte Sehenswürdigkeit alle Kategorien abzurufen:Was ist falsch mit meiner CakePHP HABTM Abfrage?
$this->set('selected_categories', $this->Category->find('list',
array('contain'=>array(
'Landmarks'=>array(
'conditions'=>array('Landmark.num'=>7)
)))));
ich die Datenbankabfrage getestet haben, die sich daraus ergibt (wie in den Debug-Level 2 ausgedruckt), und es scheint zu bekommen die richtigen Ergebnisse, dh eine Teilmenge der Kategorien. Wenn ich allerdings in der Ansicht $ ausgewählte_Kategorien var_dump, bekomme ich stattdessen eine Liste aller Kategorien.
Fehle ich etwas offensichtlich hier?
ETA: Ich sagte eine Lüge, als ich sagte, dass die obige Abfrage funktionierte. Etwas anderes auf der Seite generiert die SQL-Abfrage, die ich möchte! Welches ist:
Ja, ich sagte eine Lüge, als ich sagte, dass meine Anfrage funktionierte - werde meine Frage neu bearbeiten. Ich denke, ich habe versucht, die Liste auf "alle" zu ändern, aber ich werde es auf jeden Fall nochmal versuchen! – thesunneversets
Ich habe gerade meine Antwort bearbeitet. Versuchen Sie es mit Joins. Es auf "alle" zu setzen, würde auch nicht funktionieren. Redigiert meine Antwort, um zu erklären warum. – RabidFire
Funktioniert wirklich gut ... plus danke für die zusätzliche Hilfe, die Sachen von meinen Kontrollen und in meinen Modellen aufräumt! – thesunneversets