Поскольку это отдельные модели, которые не связаны друг с другом, вам необходимо выполнить ручной подсчет.
$this->Model->find('count');
EDIT
Хорошо, похоже, вы говорите о разных моделях.
Если это используется в меню, это означает, что оно будет отображаться на всех страницах.
У вас есть два способа сделать это.
Вы можете сделать это, имея AppController для своего приложения. По сути, вы можете поместить этот код в метод beforeRender, чтобы он выполнялся каждый раз при обработке вашего запроса
function beforeRender() {
App::import('Model', array('Work', 'Photo', 'Stuff'));
$work = new Work();
$workCount = $work->find('count');
//do the same for the other
$this->set('workCount', $workCount);
}
Посмотрите на это для более подробной информации о обратных вызовах: http://book.cakephp.org/view/977/Controller-Methods#Callbacks-984
Во-вторых, вы можете сделать это через помощника. Вы можете поместить тот же код (который находится внутри bforeRender
) в помощник, и вы можете вызвать вспомогательный метод.
Более подробную информацию о создании помощника вы можете найти здесь: http://book.cakephp.org/view/1097/Creating-Helpers