Rails:从单个表单创建自引用模型的多个记录

时间:2011-07-07 11:43:29

标签: ruby-on-rails-3 nested self-reference

我有一个自我引用的销售模型。销售对象可以代表“独立”产品销售,产品销售或产品销售:

create_table :sales do |t|
  t.belongs_to :product
  t.belongs_to :set
  t.integer :set_sale_id
  ...
end

set_sale_id引用集销售的父记录:

class Sale < ActiveRecord::Base
  belongs_to :product
  belongs_to :set
  # parent sale (set sale)
  belongs_to :set_sale, :class_name => 'Sale'
  # nested product sales
  has_many   :product_sales, :class_name => 'Sale', :foreign_key => :set_sale_id
end

我想提交几个产品并从单一表单设置销售,如下所示:

-------------------
|Product 1      \/|
-------------------
-------------------
|Product 2      \/|
-------------------
--------------
|Set 1     \/|
--------------
  --------------
  |Product 2 \/|
  --------------
  |Product 3 \/|
  --------------
-------------------
|Select product \/|
-------------------

----------
| Submit |
----------

问题是如何使用&lt;%= f.fields_for ...%&gt;以最佳方式进行此操作对于嵌套记录?

如何在控制器端处理提交的记录?

0 个答案:

没有答案