1

所以,我有一个用户系统,用户有帖子,帖子有评论。一切都与模型很好地联系在一起。

我想做的是从一个特定用户的所有帖子中获取所有最后的评论。

我有点卡住了。有任何想法吗 ?

4

2 回答 2

2

你可以试试这个:

$this->User->Behaviors->load('Containable');
$this->User->contain(array(
    'Post' => array(
        'order' => array('Post.created' => 'DESC'),
        'Comment' => array(
            'limit' => 4,
            'order' => array('Comment.created' => 'DESC')
        )
    )
));
$rs = $this->User->read(null, $id_user);
$this->User->Behaviors->unload('Containable');

您的结果在$rs变量上。

参考:

希望这可以帮助。

于 2012-10-01T11:18:47.550 回答
1

UsersController从(未测试)做这样的事情:

$comments = $this->User->Post->Comment->find('all', array(
    'recursive' = 1,
    'limit' => 4,
    'order' => array('Comment.created' => 'DESC'),
    'conditions' => array('Post.user_id' => $id_user)
));

如果您也需要检索,您可以更改recursive为。2User

于 2012-10-01T16:42:09.630 回答