【发布时间】:2011-08-26 03:33:52
【问题描述】:
我需要在 ActiveAdmin 页面中添加一些指向应用程序某些页面的链接。我可以使用侧边栏来做到这一点,但我必须为我的每个资源重复代码。是否有向标题添加自定义链接?或者为所有资源定义一个侧边栏?
【问题讨论】:
我需要在 ActiveAdmin 页面中添加一些指向应用程序某些页面的链接。我可以使用侧边栏来做到这一点,但我必须为我的每个资源重复代码。是否有向标题添加自定义链接?或者为所有资源定义一个侧边栏?
【问题讨论】:
我也不想忽略在 initializers/active_admin.rb 中设置 config.site_title_link。
我很确定它需要一个代表您应用程序中路由名称的符号,例如:
config.site_title_link = :root
会将站点标题链接到应用程序的 root_path。
【讨论】:
谢谢@phoet!通过覆盖 HeaderRenderer 来实现它:
module ActiveAdmin
module Views
class HeaderRenderer
def to_html
title + global_navigation + application_link + utility_navigation
end
def application_link
link_to('Back to Application', root_url)
end
end
end
end
【讨论】:
app/admin/views/header_renderer.rb?
我认为没有内置方法可以做到这一点,但您可以覆盖 TabsRenderer (2.2) / TabbedNavigation (3.0) 中的渲染逻辑:
def render_menu(menu)
content_tag :ul, :id => @options[:id] do
menu.items.collect do |item|
render_item(item)
end.join.<<('your_custom_stuff').html_safe
end
end
【讨论】: