就此問題而言,這是關聯樹(全部爲->
表示hasMany
),所有數據庫結構代碼都遵循CakePHP約定。根據父級模型查找條件爲
Forum -> Section (forum_id) -> Topic (section_id) -> Reply (topic_id)
我想運行一個查詢$this->Reply->find
具備一定條件的,我想返回$data["Reply"]
陣列只返回屬於他們的地方,以forum_id=X
回覆。
例如,我運行某些條件$this->Reply->find
(這並不重要),並返回兩種結果不同的家長,當你上去,直到你達到Forum.id
(或Section.forum_id
),它們的區別forum_id
。
我想要的是過濾結果,因此它們屬於某個forum_id
。由於forum_id
不是Reply
模型本身的字段,而是Section
(這是兩個「層」),因此我無法使用conditions
條目來過濾結果。
我該怎麼辦?
您將需要連接。查找查找調用上的選項參數的「連接」鍵。 – tigrang 2012-08-11 06:02:14
也許你可以使用Containable和從上到下的查詢? – Dave 2012-08-11 06:07:39
@Dave如果我用'Containable'運行一個'$ this-> Section-> find',它只能下到一個'Topic'的點。由於主題hasMany Reply,你無法到達'Reply'模型的數據,因此必須處理所有主題。 – 2012-08-11 06:08:59