我有一个自我引用的销售模型。销售对象可以代表“独立”产品销售,产品销售或产品销售:
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;以最佳方式进行此操作对于嵌套记录?
如何在控制器端处理提交的记录?