从子(belongssto)模型更新父模型

时间:2012-10-15 18:42:42

标签: php cakephp cakephp-appmodel

我有帖子和评论,用户也可以“喜欢”。我正在使用cakePHP。

帖子和评论表每个都有一个“喜欢”的行,因为我不想在每次加载帖子/评论时重新计算喜欢的内容。我也有一个喜欢的表,其中包含ID(帖子ID,用户ID),以便我知道用户已经“喜欢”了什么。

我想知道如何在cakePHP中的模型中建立这种关系,以及如何在同时在Likes表中添加新内容时更新Posts.likes字段。

我在Like Model中设置了喜欢“belongsTo”帖子和评论,此刻,我的LikesController.php看起来像这样:

public function add(){
...
    if ($this->Like->save($this->request->data)) {
      //like is added to Likes table, now how to add to the "parent" Post or Comment??
    }
...
}

1 个答案:

答案 0 :(得分:2)

保持您的表格不变,但在like_countposts表中添加comments字段。

还要在comment_count表格中添加posts

然后只使用CakePHP的counterCache,它会自动跟踪每个帖子的喜欢和评论数量。