2012-05-03 105 views
1

我有一個設置,其中有BooksUsersLogs。每個日誌都有一本書和一個用戶,我試圖檢索所有書籍的列表,不管用戶是什麼,但是也檢索與該書籍相關的日誌(遞歸設置爲1),但只檢索日誌當前登錄的用戶。CakePHP包含在關聯模型中

希望這是明確的。我嘗試使用中可容納和像這樣:

$this->Book->contain('Log.user_id = 2');

不過遺憾的是漏掉了圖書,其用戶2沒有日誌。我是否正確地進行了這方面的工作,我只是沒有正確使用容器,或者我是否全部做錯了。

任何幫助表示讚賞

回答

0
$this->Book->Behaviors->attach('Containable'); 

$this->Book->find('all', array(
          'contain' => array(
              'Log.user_id' => 2 
             ) 
         ) 
       ); 
+0

我沒有嘗試這樣做出來呢,但看起來像什麼,我有一個擴展格式。這是什麼使它的行爲不同? – Bizarro181

+0

謝謝,但我現在只是試了一下,它給出了與我在我的問題中的嘗試相同的結果。它僅返回與用戶2創建的日誌相關聯的書籍,並且沒有日誌或與用戶2沒有關聯的書籍。 – Bizarro181

+0

認爲您必須在2個請求中完成。一個用於檢索所有書籍,而不管用戶,另一個用於檢索與特定書籍相關的日誌。 – pbond