2012-05-03 107 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