将页面添加到活动管理员

我们想要向我们的管理员添加帮助页面,我们正在使用活动的admin gem。 此页面与任何模型都没有关联,所以我正在努力弄清楚如何让链接显示在每个页面的菜单栏中。

使用此内容创建一个文件/app/models/help.rb,对于更高级的无表格模型,您可能需要查看http://keithmcdonnell.net/activerecord_tableless_model_gem.html或google您自己的见解。

 class Help < ActiveRecord::Base def self.columns @columns ||= [] end # ... end 

在/config/initializers/inflections.rb中添加一个条目

 ActiveSupport::Inflector.inflections do |inflect| inflect.uncountable %w( help ) end 

在config / routes.rb中为viewlogger设置路由:

 match '/admin/help' => 'admin/help#index', :as => :admin_help 

现在您可以按如下方式制定activeadmin寄存器块(确保在正确的位置创建部分视图)

 ActiveAdmin.register Help do config.comments = false before_filter do @skip_sidebar = true end # menu false config.clear_action_items! # this will prevent the 'new button' showing up controller do def index # some hopefully useful code render 'admin/help/index', :layout => 'active_admin' end end 

结束

我知道我有点晚了,但我通常是:D。

 ActiveAdmin.register_page "Help" do content do panel "My Panel Test" do "Hello World" end end sidebar "Test Sidebar" do "Hi World" end end 

这是active_admin中的相应代码块

 # Register a page # # @param name [String] The page name # @options [Hash] Accepts option :namespace. # @&block The registration block. # def register_page(name, options = {}, &block) namespace_name = extract_namespace_name(options) namespace = find_or_create_namespace(namespace_name) namespace.register_page(name, options, &block) end