Итак, у меня есть две модели Campaign
и CampaignSubscription
CampaignSubscription
модель
У меня есть это отношение
belongs_to :campaign, inverse_of: :campaign_subscriptions, counter_cache: true, required: true
У меня нет уникальногоколичество подписок.
belongs_to :campaign, inverse_of: :campaign_subscriptions, required: true
counter_culture :campaign, column_name: proc { |model|
self.where(lead_id: model.lead_id, campaign_id: model.campaign_id).count > 1 ? nil : 'campaign_subscriptions_count' }
Но я думаю, что это неправильно и приведет к N + 1.
Теперь, когда пользователь создает следующий объект CampaignSubscription, я не получаю уникальное числоПодписки.Мне нужно сделать количество подписок уникальным для пользователя (Lead).Как более четко организовать код?