0

我有这些模型:

class Order < ActiveRecord::Base
  has_many :order_lines
  has_many :prizes, :through => :order_lines
  accepts_nested_attributes_for :order_lines
end

class Prize < ActiveRecord::Base
  has_many :order_lines  
end

class OrderLine < ActiveRecord::Base
  belongs_to :order
  belongs_to :prize
end

我想在订单表格中有一个嵌套表格,它显示每个奖品,旁边有一个文本框,用户可以在其中输入作品(例如,要订购的金额)。提交表单时,创建操作应相应地创建 order_lines。我在任何地方都找不到解决方案。

4

1 回答 1

0

首先在 Order 模型中使用accepts_nested_attributes_for :prizes,而不是你所拥有的。

之后很简单,只需在视图中添加一个表单(没有额外的步骤控制器)

<%= form_for @order do |order_form| %>
  ..
  <%= order_form.fields_for :prizes do |prizes_form| %>
    <%= prizes_form.text_field :piece %>
    ..
  <% end %>
 ..
<% end %>

这直接来自文档...您绝对应该先检查一下

于 2012-03-20T11:18:00.393 回答