在Cakephp中查找关注者和关注者数量

时间:2013-01-11 09:23:11

标签: cakephp-2.1 cakephp-appmodel

在我的用户模型中,我有字段follower_countfollowing_count

对于粉丝和以下我在我的用户中有HABTM关联定义如下:

public $hasAndBelongsToMany=array(
    'Following'=>array(
        'className'=>'User',
        'joinTable'=>'user_correlations',
        'foreignKey'=>'correlated_id',
        'associationForeignKey'=>'user_id',
        'fields'=>'id,first_name,last_name,photo_dir,photo',
        'order'=>'Rand()'
    ),
    'Followers'=>array(
        'className'=>'User',
        'joinTable'=>'user_correlations',
        'foreignKey'=>'user_id',
        'associationForeignKey'=>'correlated_id',
        'fields'=>'id,first_name,last_name,photo_dir,photo',
        'order'=>'Rand()'
    )
); 

在这种情况下,我怎样才能找到关注者数量并跟随计数?

1 个答案:

答案 0 :(得分:0)

使用Neil Crookes的HABTM计数器缓存插件:https://github.com/neilcrookes/CakePHP-HABTM-Counter-Cache-Plugin

它绝对适用于不同模型之间的HABTM关系。我不确定是否会因为用户模型在关系的两个方面而感到困惑,但它值得一试,它对你来说是一个很好的起点即使它没有开箱即用。