2010-03-21 141 views
0

共有2個模型:Project &與HABTM關係綁定的類別。 我想執行從項目控制器搜索,可以做到以下幾點:Cakephp,使用條件查找爲HABTM模型檢索數據

FIND all DISTINCT Project.scedule WHERE Category.slug != 'uncategorised' 

道歉語法,我不是續集的專家。

我設法做的是檢索所有不屬於Category的項目,但是我不知道如何再次搜索數組結果DISTINCT Project.schedule值(需要填寫表格下拉)

回答

0

在回答這個問題之前,我再次建議您仔細閱讀HABTM in cookbook of CAKEPHP,然後您可以自己完成這樣的工作。

$this->Project->bindModel(array(
'hasOne' => array(
    'CategorysProject', 
    'FilterCategory' => array(
     'className' => 'Category', 
     'foreignKey' => false, 
     'conditions' => array('FilterCategory.id = CategorysProject.category_id') 
)))); 
$this->Project->find('all', array(
    'fields' => array(DISTINCT (Project.scedule)), 
    'conditions'=>array('FilterCategory.slug !='=>'uncategorised') 
)); 
+0

非常感謝您的回答。它很好用 我想了解這種方法......以便我可以自己使用它。然而似乎有其他東西是奇怪的。在bindModel之後,我只能執行一個查詢。當我嘗試執行第二個查詢(類似於您的示例中的查詢)時,它不會這樣做。我必須重新綁定模型。這聽起來是否適合你?這是否意味着bindModel方法僅對單個查詢有效。 – ion 2010-03-22 08:09:07

+0

是的,這就是它應該是。但是,如果你有多個查詢要做,那麼還有其他簡單的方法來做到這一點。只要檢查手冊,試着找到你自己回答。:) – Young 2010-03-22 08:57:40

+0

謝謝你的開球:) – ion 2010-03-22 11:27:03