counter_cache устарел в ловушке after_create

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

Есть ли способ принудительно очистить кэш счетчика, чтобы я всегда видел актуальное значение в after_create?

1 ответ

Решение

Убедитесь, что ваш after_create :callback заявление после has_many/belongs_to определение.

Если это не работает, вы можете создать свой собственный кеш счетчика (это не что иное, как вызов приращения / уменьшения, см. Add_counter_cache_callbacks) и убедиться, что он вызывается перед вашим кодом.

Другие вопросы по тегам