#php #cakephp #counter-cache
#php #cakephp #кэш-счетчик
Вопрос:
У меня есть поле member_count
в моей countries
таблице.
Profile
Принадлежит Country
counterCache => 'member_count',
counterScope => array( 'Profile.country => 'US' )
Итак, когда пользователь выполняет сохранение в $this->User->Profile->save( $this->data)
, я хотел бы обновить counterCache
в Country
.
Возможно?
Комментарии:
1. Да, я пробовал это многими разными способами.
Ответ №1:
Барри, это не указано в качестве опции для отношений hasMany в документации
Я полагаю, вы могли бы кэшировать представление с результатами по странам и их количеству профилей, чтобы сэкономить вам некоторую производительность в качестве альтернативы.
Ответ №2:
Пожалуйста, еще раз загляните в документацию, чтобы убедиться, что вы все сделали правильно.
Ваша модель профиля должна выглядеть следующим образом:
function Profile extends AppModel {
$name = 'Profile';
var $belongsTo = array(
'Country' => array(
'counterCache' => 'member_count'
)
);
}