Рассмотрим следующую ассоциацию:
class Product < ActiveRecord::Base
belongs_to :shop
accepts_nested_attributes_for :shop
end
Если
params[:product][:shop_attributes] = {"name" => "My Shop"}
и я:
@product = Product.new(params[:product])
@product.save
создается новый магазин с именем "Мой магазин" и назначается @product
, как и ожидалось.
Однако я не могу понять, что произойдет, когда shop_attributes
содержит некоторые id
, например:
params[:product][:shop_attributes] = {"id" => "20", "name" => "My Shop"}
Я получаю следующую ошибку:
Couldn't find Shop with ID=20 for Product with ID=
Вопрос 1
Что это значит?
Вопрос 2
Если это так, то есть id
магазина известно, и магазин с таким id
уже существует, как мне создать @product
, чтобы этот магазин был назначен ему?