CakePHP: функция COUNT для ассоциации hasmany

Я пытаюсь присоединиться к модели через ассоциацию hasmany, а затем подсчитать количество записей. В основном у меня есть пользователи и проекты. Я хочу отобразить количество связанных проектов в действии пользовательского индекса.

var $hasMany = array('Project' => 
                                array('className'     => 'Project', 
                                      'conditions'    => '',
                                      'order'         => '', 
                                      'limit'         => '',                    
                                      'foreignKey'    => 'user_id',              
                                      'dependent'     => true,                   
                                      'exclusive'     => false,                  
                                      'finderQuery'   => '',                      
                                      'fields'        => '',                      
                                      'offset'        => '',                      
                                      'counterQuery'  => '',
                                      'counterCache'  => true
                                      )           
                    );

Итак, я присоединился к модели Project на user_id и установил для counterCache значение true. Вопрос в том, как мне получить доступ к этому в представлении пользовательского индекса?

я пробовал

<?php echo $user['Project']['project_count']; ?>

и

<?php echo $user['User']['project_count']; ?>

Кто-нибудь может мне помочь?

Джонси


person iamjonesy    schedule 05.09.2010    source источник


Ответы (2)



Если вы все это сделали, а project_count по-прежнему не обновляется, попробуйте отключить кеширование в app/config/core.php.

Я столкнулся с этой проблемой, когда обновил схему базы данных, но Cake кэшировал старую схему, и поэтому поле счетчика не было найдено.

person WiseOwl9000    schedule 15.10.2010
comment
извините, забыл обновить этот вопрос. По глупости я не добавил поле count в таблицу проекта. Я точно знаю :( - person iamjonesy; 15.10.2010