yıkmak I has_many :through
ilişkiyi kullanarak kendi kendine atıfta veritabanı yaptı.Ruby döngü yapmak bir dizi/karma
Bir ürünle başlayan ve her ürünün tüm bileşenlerini ve en basit duruma geçen bir döngü yazmayı deniyorum. Amaç, herhangi bir ürüne giren tüm temel ürünlerin bir dizisini iade etmektir, böylece karton 12 yumurta döndürür ve daire 192 Yumurta döndürür.
ben bir vuruş verdi ve bu bende ne kadar var, ne döngüyü kullanarak geldiğindedef product_breakdown
results = []
ingredients.each do |ingredient|
if ingredient.product_component_id == nil
results += ingredient
else
Keep digging deeper?
end
end
return results
end
Ben bütün bir kavram özlüyorum. Herhangi birinin, bunun gerektirdiği kavramların adı hakkında bir tavsiyesi varsa, çok minnettar olurum. Daha açık olmak için, veritabanının ilişkilerini kopyaladım.
class Product < ActiveRecord::Base
has_many :ingredients
has_many :product_components, :through => :ingredients
end
class Ingredient < ActiveRecord::Base
belongs_to :product
belongs_to :product_component, class_name: "Product", :foreign_key => "product_component_id"
end
"product_source" ve "product_component" öğelerinin ne anlama geldiğini anlatabilir misiniz? –
sınıf Ürün: bileşenlerin uç sınıfı Bileşen "product_component_id" end –
user1659305
Bunu uygun bir şekilde biçimlendirilecekleri yerine, soru gövdesinde yayınlayabilir misiniz? Teşekkürler! –