Sha256: ccc2bbaf2fa4dc5a328ffd038eb131319d628d924de4ec3291ebf00a84c6f5e7
Contents?: true
Size: 904 Bytes
Versions: 3
Compression:
Stored size: 904 Bytes
Contents
# -*- coding: utf-8 -*- # # This module provides the +is_navable+ method for ActiveRecord::Base. # Calling this method marks the model (User, Page, ...) as navable, i.e. has menu, breadcrumbs, etc. # # The inclusion in ActiveRecord::Base is done in # config/initializers/active_record_navable_extension.rb. # module Navable def is_navable has_one :nav_node, as: :navable, dependent: :destroy, autosave: true include InstanceMethodsForNavables end module InstanceMethodsForNavables def is_navable? true end def navable? is_navable? end def nav_node node = super node = build_nav_node unless node return node end def navnode nav_node end def nav nav_node end def navable_children children.select { |child| child.respond_to? :nav_node } end private end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
your_platform-1.0.1 | app/models/navable.rb |
your_platform-1.0.0 | app/models/navable.rb |
your_platform-0.0.2 | app/models/navable.rb |