Aşağıdaki ilişkiyi göz önünde bulundurun:Raylar 3: "accepts_nested_attributes_for" nasıl çalışır?
class Product < ActiveRecord::Base
belongs_to :shop
accepts_nested_attributes_for :shop
end
params[:product][:shop_attributes] = {"name" => "My Shop"}
ve ben:
@product = Product.new(params[:product])
@product.save
"My Shop" adıyla yeni bir mağaza oluşturulur ve @product
olarak atanır. beklenen.
Ancak, shop_attributes
bir id
içerdiğinde ne olacağını anlayamıyorum, örneğin:
params[:product][:shop_attributes] = {"id" => "20", "name" => "My Shop"}
Aşağıdaki hatayı alıyorum:
Couldn't find Shop with ID=20 for Product with ID=
Soru 1
Bu ne anlama geliyor?
Bu durumda, yani mağazanın
id
olduğu biliniyor ve id
ile zaten var olan dükkan var, bu dükkanın nasıl atanacağını @product
nasıl oluşturmalıyım o ?
Bir ürünün birden fazla satıcısı varsa bunun nasıl çalıştığı hakkında bir fikriniz var mı? Params [: product] [: shops_attributes] = {"0" => {"id" => "20", "name" => "Mağazam" gibi, "1" => {...}} '? Teşekkürler! – Cimm
Params [: product] [: shop_id] metodolojisini kullanarak şunları yapabilirsiniz: 'params [: product] [: shop_ids] = [20,23,27]' –