[英]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.