Ich habe ein Modell (Listings) das hat und gehört zu ein paar verschiedenen Modellen, ich würde gerne alle dieses Modell finden, wo es ein verwandtes Modell (Openhouses) hat eine Bedingung. Das 'hat und gehört zu' wird in den Modelldateien eingerichtet. Angebote hat viele Openhouses und Openhouses gehören zu Listings. (Und Angebote hat viele und blongs zu einigen anderen Modellen, wo ich die Daten will.)In CakePHP Wie kann ich einen Fund mit Bedingungen auf einem verwandten Gebiet tun?
Ich habe versucht.
$this->Listing->find('all',
array('conditions' =>
array('Openhouse.date >' => $openhouse_start->format('Y-m-d H:i:s'),
'Openhouse.date <' => $openhouse_end->format('Y-m-d H:i:s'))
));
aber ohne Erfolg.
Error: 1054: Unknown column 'Openhouse.date' in 'where clause
Ich weiß, dass ich auf dem Openhouse-Modell suchen und die dazugehörigen Anzeigen erhalten, aber dann werden die Daten in einem anderen Format zurückgegeben und ich brauche Rekursion Weg aufzudrehen Daten von meinen anderen Modellen zu erhalten. (Und ich am Ende mit doppelten openhouse Daten!). Ich kann bei Bedarf weitere Code-Beispiele veröffentlichen.
Meine Frage ist im Grunde muss ich nur das Openhouse-Modell abfragen und damit leben oder ist meine Syntax für das Setzen von Bedingungen auf verwandten Modellen falsch?
Das ist wirklich nützlich für mir aber ist es auch möglich nach dem Openhouse.date Feld zu sortieren. Wenn ich in meinem Beispiel versuchte, das mit diesem gleich ist, hat es keinen Sinn. Ich debugged die Abfragen und Sortierung Feld und die Verknüpfung ist in getrennten Abfragen. $ this-> List-> find ('alle', array ('contain' => array ('Openhouse.conditions' => array ('Openhouse.date>' => $ openhouse_start-> format ('Ymd H: i : s '),' Openhouse.date <' => $ openhouse_end-> Format ('Ymd H: i: s'))), 'Openhouse.order' => Array ('Openhouse.date DESC'))) –