繁体   English   中英

活动管理员:如何自定义主菜单(在页面顶部)?

[英]Active Admin: How to customize the main menu (at the top of the page)?

这可能很简单,但我找不到解决方案。

在ActiveAdmin中,我想自定义页面顶部菜单的行为,特别是当前登录用户的此链接:

在我所有的搜索中,我一直找不到在右上角更改链接的方法。

我想更改链接指向的文本,并可能添加指向菜单此区域的链接。

是否有捷径可寻?

您可以修改config / initializers / active_admin.rb

对于ActiveAdmin 0.6.0 ,添加以下行:

ActiveAdmin.setup do |config|
  # Customize Up Right menu
  config.namespace :admin do |admin|
    admin.build_menu :utility_navigation do |menu|
      menu.add  :label  => 'click me', # text of your link
        :url            => proc{ my_awesome_path }, # route of your link
        :html_options   => {:style => 'float:left;'}, # attributes added in the DOM of your link
        :if             => proc{ 1 < 2 } # condition to display the link

      menu.add  :label  => proc{ display_name current_active_admin_user }, # email of the current admin user logged
        :url            => proc { my_other_awesome_path },
        :html_options   => {:style => 'float:left;'},
        :id             => 'current_user',
        :if             => proc{ current_active_admin_user? }

      admin.add_logout_button_to_menu menu, 100, :style => 'float:left;' # logout link
    end
  end
end

对于ActiveAdmin 0.4.2及之前,您必须在同一文件的末尾添加此代码:

ActiveAdmin.setup do |config|
  # ...
end

module ActiveAdmin
  module Views
    class HeaderRenderer
      alias_method :default_to_html, :to_html
      def to_html
        default_to_html.sub(current_admin_user.email, "<a style='text-decoration: underline;' href='#{my_awesome_path}'>#{current_admin_user.email}</b>").html_safe
      end
    end
  end
end

希望这可以帮助 :)

只需在初始化文件中键入以下内容:

ActiveAdmin.setup do |config|
 config.namespace :admin do |admin|
   admin.build_menu :utility_navigation do |menu|
     menu.add label: "ActiveAdmin.info", url: "http://www.activeadmin.info",
                                      html_options: { target: :blank }
     admin.add_current_user_to_menu  menu
     admin.add_logout_button_to_menu menu
   end
 end
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM