module Crumbs::Extensions::ActionController::Base
Private Instance Methods
set_crumbs()
click to toggle source
# File lib/crumbs/extensions/action_controller/base.rb, line 13 def set_crumbs paths = [request.path] until paths.first == '/' paths.prepend File.dirname(paths.first) end session[:referers] ||= {} url, query = request.url.split(/\/?\?/) if query session[:referers][url] = query end @crumbs = [] paths.each do |path| url = "#{request.base_url}#{path}".remove(/\/$/) begin params = Rails.application.routes.recognize_path(url) rescue next end if name = Crumbs.definitions.find("#{params[:controller]}##{params[:action]}", params) if query = session[:referers][url] url << "?#{query}" end @crumbs << { name: name, url: url } end end end