簡體   English   中英

如何在ActiveAdmin中設置父菜單優先級?

[英]How to set a parent menu priority in ActiveAdmin?

我的Ruby on Rails應用程序中有幾個模型,如“Plan”,“Tester”,“Module”等。使用activeadmin gem,我想為每個實體創建一個頁面,並將每個模塊放在幾個不同的菜單。 所以我的代碼如下所示:

ActiveAdmin.register Plan do
  menu parent: 'Planning', priority: 1

ActiveAdmin.register Tester do
  menu parent: 'Planning', priority: 2

ActiveAdmin.register Module do
  menu parent: 'Bundle', priority: 1

ActiveAdmin.register User do
  menu parent: 'Administration', priority: 1

我沒有頂級菜單的頁面('Planning','Bundle','Administration'),但我希望以自定義順序而不是字母順序看到它們。 所以,我的問題是如何設置父菜單的優先級(順序),而不是每個菜單都有相應的頁面?

非基於模型的項目從10開始優先級,因此您可以為基於模型的菜單提供10+優先級。 如果您需要在非基於模型的菜單中設置優先級,您可以在管理員文件夾下構建假文件,例如admin / administration.rb,代碼如下:

ActiveAdmin.register_page "Administration" do
  menu :label => "Administration", :priority => 15, :url => '#'
end

和admin / bundle.rb:

ActiveAdmin.register_page "Bundle" do
  menu :label => "Bundle", :priority => 16, :url => '#'
end

等等

請參閱文檔中的“自定義父菜單項”。

# config/initializers/active_admin.rb
config.namespace :admin do |admin|
  admin.build_menu do |menu|
    menu.add label: 'Blog', priority: 0
  end
end

# app/admin/post.rb
ActiveAdmin.register Post do
  menu parent: 'Blog'
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM