我正在尝试使用嵌套属性创建item
,这些是我的表:
物品
has_many :items_modifier_groups, dependent: :destroy
has_many :items_modifier_group_items, dependent: :destroy
attr_accessible :items_modifier_groups_attributes, :items_modifier_group_items_attributes
accepts_nested_attributes_for :items_modifier_groups, :items_modifier_group_items
ModifierGroup
attr_accessible: tag_id
ItemsModifierGroup
belongs_to :modifier_group
belongs_to :item
has_many :items_modifier_group_items, dependent: :destroy
attr_accessible :item_id, :modifier_group_id, :modifier_group_attributes, :items_modifier_group_items_attributes
accepts_nested_attributes_for :modifier_group, :items_modifier_group_items
ItemsModifierGroupItem - 表4
belongs_to :items_modifier_group
belongs_to :item
attr_accessible :items_modifier_group_id, :item_id, :pre_select
从控制台创建的参数:
c = Item.new(
"name" => "test1", "items_modifier_groups_attributes"=> {
"0"=> {
"items_modifier_group_items_attributes"=> {
"0"=> {
"pre_select"=>"true"
}
},
"min_item"=>"1",
"modifier_group_attributes"=> {
"tag_id"=> "5"
}
}
}
)
c.save
INSERT INTO "items_modifier_group_items" ("created_at", "item_id", "items_modifier_group_id", "pre_select", "sequence_no", "updated_at") VALUES ($1, $2, $3, $4, $5, $6) RETURNING "id" [["created_at", Wed, 28 Feb 2018 15:44:27 GST +04:00], ["item_id", nil], ["items_modifier_group_id", 35], ["pre_select", true], ["sequence_no", 0], ["updated_at", Wed, 28 Feb 2018 15:44:27 GST +04:00]
当它从 CONSOLE 创建项目时,item_id
在nil
表格中为ItemsModifierGroupItem
;但是,item_id
是在ItemsModifierGroup
表中创建的。
我错过了参数中的任何内容吗?