class Consumer < ApplicationRecord has_many :users scope :with_internal_users, -> { where('id IN (SELECT DISTINCT consumer_id FROM internal_users)') } scope :with_external_users, -> { where('id IN (SELECT DISTINCT consumer_id FROM external_users)') } scope :with_study_groups, -> { where('id IN (SELECT DISTINCT consumer_id FROM study_groups)') } validates :name, presence: true validates :oauth_key, presence: true, uniqueness: true validates :oauth_secret, presence: true def to_s name end end