Active Admin在register_page中创建表单

wes*_*ool 5 formtastic activeadmin

使用ActiveAdmin(0.5.1)我想创建多个不同的表单来创建一个对象并将其保存到我的数据库中.我试图通过使用来做到这一点ActiveAdmin.register_page,但我在尝试创建表单时遇到了麻烦.似乎在使用时register_page,您没有获得与通话中相同的form方法register.这是代码:

ActiveAdmin.register_page "New Object" do
  content do
    para "Here you can create new objects!"
    para "This content will be replaced with links to the specialized forms"
  end
end
Run Code Online (Sandbox Code Playgroud)

以及其中一种形式的代码:

ActiveAdmin.register_page "Type 1" do
  menu :label => "Type 1", :parent => "New Object"

  content do
    panel "Attributes" do
      form do |f|
        f.input :color
        f.input :size
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

但是,此表单不会以任何可行的方式呈现.此外f.inputs,您可以在示例中看到的许多其他方法(如此)也不起作用.是否可以使用完整功能表格ActiveAdmin#register_page

Jos*_*ach 3

要在非标准上下文(即不是资源寄存器)中创建表单,您需要使用 formattasticsemantic_form_for并指定:url:builder选项。

content do
  semantic_form_for MyObject.new, :url => admin_my_objects_url, :builder => ActiveAdmin::FormBuilder do |f|
    f.inputs "My Object" do
      f.input :color
      f.input :size
    end
    f.actions
  end
end
Run Code Online (Sandbox Code Playgroud)

这将为您提供一个标有“我的对象”的面板,其中包含您的对象的表单,其下方有一个提交按钮。