2010-11-21 13 views
1

Çok az AREL ifadesi yazdım, fakat kendimi bu konuda düğümler halinde bağlarım. Bazı değerle eşleşen bir tanımlayıcı bir çocuk ürün var Ürünlerin tümünü almak istiyorumBir öz referans tablosunda bir AREL bildirimi nasıl yazılır

class Product < AR::Base 
    has_many :parents, :class_name => "ProductLink", :foreign_key => :to_product_id 
    has_many :children, :class_name => "ProductLink", :foreign_key => :from_product_id 

    # has an attribute called "identifier" 

end 

class ProductLink < AR::Base 
    belongs_to :parent, :class_name => "Product", :foreign_key => :from_product_id 
    belongs_to :child, :class_name => "Product", :foreign_key => :to_product_id 
end 

: İşte benim durumdur.

Kendimi bir simitle büktüm, bu kolay görünüyor, ama şimdi çok uzun zamandır bakıyordum. Herhangi bir yardım için minnettarım!

cevap

0

Anladım!

brand.products.joins(:children => :child).where(:children => { :child => { :searchable_identifier.matches => "2136" } }) 

Bu harika çalışıyor. Karma katıldı? Beni bu yüzden fırlatıyordu.

+0

Semboller'de 'match'leri arayamazsınız ...? – rwb

İlgili konular