【问题标题】:Rails 3 MongoID and nested forms (embedded documents) - how to add form fields of fields_forRails 3 MongoID 和嵌套表单(嵌入文档) - 如何添加 fields_for 的表单字段
【发布时间】:2012-06-25 21:56:58
【问题描述】:

我正在使用 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

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

非常感谢。

【问题讨论】:

标签: ruby-on-rails-3 mongoid nested-forms


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-16
    • 2018-04-23
    • 2013-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多