如何在ActiveAdmin gem中创建自定义页面

Ale*_*pov 7 ruby-on-rails activeadmin ruby-on-rails-4

Ruby 2.0,Rails 4.0,PSQL 9.3

在ActiveAdmin文档中有一个示例:

ActiveAdmin.register_page "My Page" do
  content do
    para "Hello World"
  end
end
Run Code Online (Sandbox Code Playgroud)

我在哪里放这个代码?文件说:

在上面的示例中,将在/ admin/my_page创建一个新页面,标题为"我的页面",内容为"Hello World".

这意味着这样的文件会以某种方式自动创建?不过,我创建了一个名为import.rbapp/admin的文件,菜单中的Import项确实出现了.但是,我无法使用HTML,因为此文件是.rb而不是.erb.我想,为了能够使用html,我需要在方法中创建一个partial和den渲染它content.但当我看到下面app/views没有admin文件夹(只layouts).这是否意味着我需要创建该文件夹adminapp/views?如果是的话,我应该把我的部分放在哪里 - 直接放在app/views/admin新文件夹下面或下面app/views/admin/import

我很抱歉菜单问题,但ActiveAdmin的文档非常适中.如果有人能够提供有关在ActiveAdmin中为新页面创建和添加内容所需步骤的详细说明,我将不胜感激.

kri*_*lim 10

文档的含义是,如果您创建一个新的自定义页面app/admin/my_page.rb,该页面将在URL中可用/admin/my_page(如果您使用的是默认的ActiveAdmin配置).

关于为您渲染ERB或HAML部分my_page.rb,您可以这样做:

ActiveAdmin.register_page "My Page" do
  content do
    render :partial => 'about'
  end
end
Run Code Online (Sandbox Code Playgroud)

这将在目录下查看app/views/admin/my_page/.如果目录不存在,请创建它们.此外,您仍然可以通过引用完整的模板路径(例如shared/sections/about)来指定其他目录,就像您对非ActiveAdmin控制器一样.

  • @NidhinSG:"此页面将在URL/admin/my_page中提供":-) (2认同)