私は自己参照販売モデルを持っています。販売オブジェクトは、「独立した」製品販売、製品セットの販売、またはセット内の製品の販売を表すことができます。
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
次のような 1 つのフォームから複数の製品とセット販売を送信したいと考えています。
------------------- |商品 1 \/| ------------------- ------------------- |製品 2 \/| ------------------- -------------- |セット 1 \/| -------------- -------------- |製品 2 \/| -------------- |製品 3 \/| -------------- ------------------- |製品を選択\/| ------------------- ---------- | | 送信 | ----------
問題は、ネストされたレコードに <%= f.fields_for ... %> を使用して最適な方法で行う方法ですか?
コントローラー側で送信されたレコードを処理する方法は?