Sha256: 585ebf1100c101eae0d370af74be4aa4fddd1c37b8098632c959def616521c01
Contents?: true
Size: 1 KB
Versions: 8
Compression:
Stored size: 1 KB
Contents
module ActiveAdmin module ViewHelpers module BreadcrumbHelper # Returns an array of links to use in a breadcrumb def breadcrumb_links(path = request.path) parts = path[1..-1].split('/') # remove leading "/" and split up the URL parts.pop # remove last since it's used as the page title parts.each_with_index.map do |part, index| # 1. try using `display_name` if we can locate a DB object # 2. try using the model name translation # 3. default to calling `titlecase` on the URL fragment if part =~ /\A(\d+|[a-f0-9]{24})\z/ && parts[index-1] config = active_admin_config.belongs_to_config.try(:target) || active_admin_config name = display_name config.find_resource(part) end name ||= I18n.t "activerecord.models.#{part.singularize}", :count => 1.1, :default => part.titlecase link_to name, '/' + parts[0..index].join('/') end end end end end
Version data entries
8 entries across 8 versions & 3 rubygems