Skip to content

Instantly share code, notes, and snippets.

@longlostnick
Last active December 17, 2015 14:29
Show Gist options
  • Save longlostnick/5624968 to your computer and use it in GitHub Desktop.
Save longlostnick/5624968 to your computer and use it in GitHub Desktop.
Breadcrumbs
module Breadcrumbs
def self.included(base)
base.extend ClassMethods
end
def add_breadcrumb(name, path)
@breadcrumbs ||= []
@breadcrumbs << Breadcrumb.new(name, path)
end
module ClassMethods
def add_breadcrumb(name, path = nil, options = {})
before_filter options do |controller|
path = controller.send(path) if path.is_a? Symbol
controller.send(:add_breadcrumb, name, path)
end
end
end
class Breadcrumb
attr_reader :name, :path
def initialize(name, path)
@name = name
@path = path
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment