Sha256: 6f429b338faa502592dae3db02029fbd325e43d94daf7b50150fa8874b1219da
Contents?: true
Size: 589 Bytes
Versions: 4
Compression:
Stored size: 589 Bytes
Contents
module Spina class NavigationItem < ApplicationRecord belongs_to :navigation, touch: true belongs_to :page has_ancestry orphan_strategy: :adopt scope :sorted, -> { order('spina_navigation_items.position') } scope :live, -> { joins(:page).where(spina_pages: {draft: false, active: true}) } scope :in_menu, -> { joins(:page).where(spina_pages: {show_in_menu: true}) } scope :active, -> { joins(:page).where(spina_pages: {active: true}) } validates :page, uniqueness: {scope: :navigation} delegate :menu_title, :materialized_path, to: :page end end
Version data entries
4 entries across 4 versions & 1 rubygems