0

所以,我想在我正在做的事情上添加一个“喜欢”系统,但我遇到了一些麻烦。

所以我喜欢的数据库表是这样的:

========================================
|| *id* | created | user_id | post_id ||
========================================

我同意计算一个帖子的点赞数。我遇到的问题是我想知道登录用户是否已经喜欢该帖子正在查看,因此“喜欢”链接将变为“不喜欢”链接。这就是我的问题。我无法想象该怎么做。

有什么帮助吗?

4

1 回答 1

1

Model::hasAny()方法:

$userHasLikedThisPost = $this->Like->hasAny(array(
    'user_id' => $this->Auth->user('id'), 
    'post_id' => $postId
));

然后只需设置一个视图变量并输出相应的链接。

在模型中创建一个辅助方法,使其更可重用:

public function hasLike($postId, $userId) {
    return $this->hasAny(array(
        'user_id' => $userId, 
        'post_id' => $postId,
    ));
}
于 2012-09-26T21:58:33.363 回答