1

我正在使用 mongoid (3.0) 和 rails 3.2 创建一个存储具有多个地址的模型的表单。如何按需添加表单字段(因为我想让用户决定向模型添加多少地址)?

在“新”控制器中,我使用 @person.addresses.build 创建嵌入式文档,一切都按预期工作,即使我尝试通过 Rails 控制台添加多个地址。但是如何创建一个根据用户请求添加嵌套字段的动态表单?

表格:

<%= simple_form_for @person, :html => { :multipart => true } do |f| %>
  <%= f.input_field :title %>
  <%= f.fields_for :addresses do |t| %>
    this is an address input:
    <%= t.input :foo %>
  <% end %>
<% end %>

型号:

class Rootobject
  include Mongoid::Document
  field :title
  embeds_many :addresses
  accepts_nested_attributes_for :addresses
end

class Person < Rootobject
  field :firstname
end

class Address
  include Mongoid::Document
  field :foo
  embedded_in :rootobject, :inverse_of => :addresses
end

上面的代码是我想要做的简化。我的地址表格实际上是部分的。使嵌套形式的地址显示另一个迭代(部分)的最简单方法是什么?

非常感谢。

4

1 回答 1

0

你可以使用这个gem。它创建地址部分的蓝图,您可以在其中添加Add / Remove按钮来添加/删除地址。

于 2012-08-03T14:21:08.937 回答