У меня есть модель User, которая has_many :questions
и вопрос, оба belongs_to :user
и belongs_to :expert, as polymorphic: true
. Эксперт может быть тренером или врачом
Мне нужен кеш счетчика для User
, а также для Тренера и Доктора.
class Question < ApplicationRecord
belongs_to :user
belongs_to :expert, polymorphic: true
has_many :answers, dependent: :destroy
end
class User
has_many :questions
has_many :answers, as: :responder
end
class Trainer
has_many :questions, as: :expert
end
class Doctor
has_many :questions, as: :expert
end
Можно ли настроить counter_cache
для belongs_to :user
и belongs_to :expert, polymorphic: true
?
Таким образом, я мог бы сделать и user.questions_count
, и trainer.questions_count