Срабатывает ли counter_cache только для create

#ruby-on-rails #activerecord #ruby-on-rails-4.1

#ruby-on-rails #activerecord #ruby-on-rails-4.1

Вопрос:

Допустим, я меняю ассоциацию в своей Comment модели с помощью — Comment.find(20).update(post_id: 30)

Итак, в этом случае будет ли уменьшен кеш счетчика для Post модели?

Комментарии:

1. Да, количество уменьшается для предыдущего и увеличивается для обновленного сообщения.

2. По моему опыту, counter_cache столбец очень слабый. Если вы удалите записи вручную (т. Е. во время тестирования), они перейдут в отрицательные значения. Это безумно неэффективно