活动管理员中的多级菜单

Multi level menus in active admin

有没有办法在 Active Admin 中创建多级菜单(超过两级深度),而某些条目不是模型?

类似于:

1 - Some_text 1.1 - Model_1 1.1.1 - Model_2 1.2 - Some_other_text 1.2.1 - Model_3 1.2.2 - Model_4 1.3 - Model_5 2 - Some_more_text 2.1 - Model_6 2.2 - Model_7 3 - Model_8

我还没有找到方法(我检查了 gem subnav 但它不允许我将纯文本作为菜单项:它必须是模型)。

欢迎提出任何建议。谢谢

方法是创建一个 ActiveAdmin::Views::Header。 喜欢下面的:

class CustomAdminHeader < ActiveAdmin::Views::Header
  include Rails.application.routes.url_helpers

  def build(namespace, menu)
    div class: 'c-nav' do
      div class: 'logo' do
        image_tag(image_url("logo.svg"))
      end
      div class: 'list' do
        # Add one item without son.
        ul do
          # Replace route_destination_path for the route you want to follow when you receive the item click.
          li { link_to 'Dashboard', admin_dashboard_path }
        end

        # Add one item with one son.
        ul do
          li do
            text_node content_tag 'a', 'Animals'
            ul do
              li { link_to 'Cats',         admin_cats_path }
              li { link_to 'Dogs',     admin_dogs_path }
              li { link_to 'Wolves',          admin_wolves_path }
              li { link_to 'Cows',         admin_cows_path }
              li do
                text_node content_tag 'a', 'Settings', class: '-with-children'
                ul do
                  li { link_to 'Categories',             admin_categories_path }
                  li { link_to 'Subcategories',          admin_subcategories_path }
                  li { link_to 'Colors',             admin_colors_path }
                  li { link_to 'Sizes',                   admin_sizes_path }
                  li { link_to 'Sounds',    admin_sounds_path }
                  li { link_to 'Species',                admin_species_index_path }
                end
              end
            end
          end
        end
...