Можно ли отслеживать что-то еще с counter_cache, кроме количества объектов в ассоциации?
Все, что я пытаюсь сделать, это легко / легко... всякий раз, когда PostsController#Show
действие запускается, чтобы увеличить post.views
или же post.view_count
колонка. Я не хочу делать что-то слишком тяжелое.
Такое ощущение, что родной counter_cache
было бы идеально... но это специально для подсчета объектов ассоциации.
В любом случае, я могу изменить это? Или использовать базовые концепции так, как я хочу?
1 ответ
Решение
Вы не можете использовать счетчик кэша напрямую, но вы можете использовать основную функцию приращения. Смотрите документацию. Чтобы сделать то, что вы говорите, вы хотите:
Post.increment_counter(:view_count, post.id)
Это выдает один SQL update
команда.