Rails表单中的多个条目

时间:2011-11-18 16:32:05

标签: ruby-on-rails forms multiple-models

我会尝试尽可能多地解释这一点。

我有一个Rails表单和3个模型。 型号:DemoModule,SalesDemo和SalesDemoModule

我想在我的视图/表单中创建一个新的SalesDemo,但SalesDemo有许多SalesDemoModules。

在控制器中我有:

@sales_demo = SalesDemo.new
@demo_modules = DemoModule.find(:all, :conditions => ['active = true'])

在我看来,我如何为每个DemoModule都有一个文本字段行,我可以将其传递回控制器操作,以保存到SalesDemoModule中?

2 个答案:

答案 0 :(得分:2)

您可以指定SalesDemo accepts_nested_attributes_for SalesDemoModule,然后允许您创建嵌套表单(即在form_for SalesDemo中,您可以使用fields_for SalesDemoModule)。 Here's a simple example

答案 1 :(得分:1)

简单地说:

<%= form_for @sales_demo do |sales_demo_form| %>
  <%= sales_demo_form.text_field "some_sales_demo_property" %>
  <%= sales_demo_form.fields_for @demo_modules do |modules| %>
    <%= modules.text_field "some_module_text_field" %>
  <% end %>
<% end %>

在SalesDemo中,您需要

accepts_nested_attributes_for :demo_modules

您可以获得更多信息here