Что ж, у меня возникла та же проблема, и я оказался в вашем посте, но обнаружил, что, поскольку обратные вызовы "after_" и "before_" являются публичными методами, вы можете сделать следующее:
class Author < ActiveRecord::Base
has_many :posts
Post.after_create do
# Do whatever you want, but...
self.class == Post # Beware of this
end
end
Я не знаю, насколько стандартно это сделать, но методы общедоступны, так что, думаю, все в порядке.
Если вы хотите разделить кеш и модели, вы можете использовать Sweepers .