[英]Building conditional statement across multiple models (CakePHP 1.2.5)
假設我有3個模型:用戶,地區和國家/地區。
User belongsTo Region
Region belongsTo Country
這些模型中的每一個都使用Containable行為。 我正在嘗試使用代碼“ US”從該國家/地區查找用戶。 這是我正在嘗試的:
$users = $this->User->find('all', array(
'conditions' => array('Country.code' => 'US'),
'contain' => array('Region.Country'),
));
CakePHP將其分為兩個查詢:
region.country_id
在先前檢索到的國家ID列表中。 結果,由於我的conditions
數組包含對Country.code的引用,而Cake生成的第二個查詢未加入國家/地區,因此我在應用中遇到了SQL錯誤。
我看到的最好的Cake解決方案是按照手冊的“ 復雜查找條件”部分所述構建子查詢。 但是,這似乎很令人費解,並且比我想實現的更多的是hack。 有沒有一種我可以忽略的簡便方法?
Nate Abele(CakePHP的前首席開發人員)寫了一篇有關進行臨時連接的文章,這可能會有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.