1234567891011121314151617181920212223 |
- # frozen_string_literal: true
- # == Schema Information
- #
- # Table name: global_follow_recommendations
- #
- # account_id :bigint(8) primary key
- # rank :decimal(, )
- # reason :text is an Array
- #
- class FollowRecommendation < ApplicationRecord
- include DatabaseViewRecord
- self.primary_key = :account_id
- self.table_name = :global_follow_recommendations
- belongs_to :account_summary, foreign_key: :account_id, inverse_of: false
- belongs_to :account
- scope :unsupressed, -> { where.not(FollowRecommendationSuppression.where(FollowRecommendationSuppression.arel_table[:account_id].eq(arel_table[:account_id])).select(1).arel.exists) }
- scope :localized, ->(locale) { unsupressed.joins(:account_summary).merge(AccountSummary.localized(locale)) }
- end
|