Sha256: 25c9b936b996e29f4737855513abaf46aca32228f70a89668955fdd94a4b457d

Contents?: true

Size: 438 Bytes

Versions: 4

Compression:

Stored size: 438 Bytes

Contents

module Spina
  class Resource < ApplicationRecord
    has_many :pages, dependent: :restrict_with_exception

    belongs_to :parent_page, class_name: "Spina::Page", optional: true

    def pages
      case order_by
      when "title"
        super.joins(:translations).where(spina_page_translations: {locale: I18n.locale}).order("spina_page_translations.title")
      else
        super.order(created_at: :desc)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
spina-1.0.3 app/models/spina/resource.rb
spina-1.0.2 app/models/spina/resource.rb
spina-1.0.1 app/models/spina/resource.rb
spina-1.0.0 app/models/spina/resource.rb