我使用的是CakePHP 2.0,我在用戶和課程之間有多對多的關係。 我有一個數據庫表users
,courses
和courses_users
。CakePHP - HABTM - 獲取加入數據庫表的結果
問題是刪除已經與用戶關聯的課程。如果在courses_users
中與用戶有關聯,我將不會刪除它們。
所以我在我的模型中寫道Course.php
function beforeDelete() {
if (??? == 0) {
return true;
}
return false;
}
我需要的是寫在CakePHP的數據庫查詢,這樣我就可以判斷一個過程不與任何用戶(x == 0)。 我該怎麼做?以1:n的關係,我可以寫這
if($this->User->find("count", array("conditions" => array("course_id" => $this->id))) == 0)
但我怎麼能做到這一點在我的n:m關係?
最好的問候。
我已經試過這個,但是我得到錯誤'致命錯誤:調用一個非對象'的成員函數find(),所以'$ this-> CoursesUser'不是我模型中的一個對象。 – Tim 2012-02-11 15:32:17
然後嘗試UsersCourse。我100%肯定定義了一個HABTM關係會創建一個叫做CoursesUser或UsersCourse的鏈接模型。 – 2012-02-11 15:35:44
啊,我發現我的錯誤!我寫了'CourseUser'而不是'CoursesUser'。非常感謝,現在我知道這是如何工作的。 – Tim 2012-02-11 15:39:16