Files
fizzy/app/models/card/golden.rb
T
David Heinemeier Hansson 20a2965181 Keep scopes together
2025-04-22 12:12:30 +02:00

23 lines
442 B
Ruby

module Card::Golden
extend ActiveSupport::Concern
included do
has_one :goldness, dependent: :destroy, class_name: "Card::Goldness"
scope :golden, -> { joins(:goldness) }
scope :with_golden_first, -> { left_outer_joins(:goldness).prepend_order("card_goldnesses.id IS NULL") }
end
def golden?
goldness.present?
end
def gild
create_goldness! unless golden?
end
def ungild
goldness&.destroy
end
end