gpt4 book ai didi

ruby-on-rails - 无论如何,是否可以使用 Active Admin 添加其他级别的菜单?

转载 作者:行者123 更新时间:2023-12-04 23:04:37 24 4
gpt4 key购买 nike

我正在使用 Active Admin 并尝试在下拉菜单中添加另一个级别。在文档中,我看到我可以使用以下代码放置一个级别:

  ActiveAdmin.register Post do
menu :parent => "Blog"
end

谢谢你的帮助。

编辑:

我想要这样的东西:
Menu 1 ^
Menu 2 > Menu A
Menu B
Menu 3

最佳答案

我解决了覆盖 ActiveAdmin 菜单的问题。还需要为新菜单创建一个新的 CSS。

通知 ActiveAdmin 我们将使用 header 本身。为此,在文件 中添加以下几行配置/初始化程序/active_admin.rb :

config.view_factory.header = CustomAdminHeader
config.register_stylesheet 'new_menu.css'

创建一个名为 CustomAdminHeader 的类,该类将包含将覆盖构造菜单的代码。您可以在 中创建此类应用程序/管理员 并将文件命名为 custom_admin_header.rb .并添加此代码以创建新菜单:
class CustomAdminHeader < ActiveAdmin::Views::Header
include Rails.application.routes.url_helpers

def build(namespace, menu)
div :id => 'tabs' 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 'Item without son', route_destination_path }
end

# Add one item with one son.
ul do
li do
text_node link_to("Parent with 1 child", "#")
ul do
li { link_to 'Son without child', route_destination_path }
# If you want to add more children, including more LIs here.
end
end
end

# Adds a menu item with one son and one grandson.
ul do
li do
text_node link_to("Grandmother with 1 child", "#")
ul do
li do
text_node link_to("Parent with 1 child", route_destination_path)
ul do
li { link_to 'Grandson without child', route_destination_path }
# If you want to add more grandchildren, including more LIs here.
end
end
end
end
end

super(namespace, menu)
end
end

您的菜单结构将由此类创建,因此文件夹 中包含的类中使用的菜单设置。应用程序/管理员 不应显示。为此,您需要在所有类中添加以下代码:
menu false

最后,您需要创建一个名为 的 CSS 文件。 new_menu.css 并为新菜单添加 CSS。

我在我的博客上发布了这个解决方案:

http://monteirobrena.wordpress.com/2013/05/07/activeadmin-customizacao-do-menu/

我希望它对任何人都有帮助。

关于ruby-on-rails - 无论如何,是否可以使用 Active Admin 添加其他级别的菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15400036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com