Non so perché non riesco a capirlo, penso che dovrebbe essere abbastanza semplice. Ho due modelli (vedi sotto). Sto cercando di creare uno scope con nome per SupplierCategory in grado di trovare tutte le categorie di fornitori (compresi i fornitori) i cui fornitori non sono vuoti.ActiveRecord trova tutti i genitori che hanno figli associati
Ho provato un dritto fino join, named_scope :with_suppliers, :joins => :suppliers
che mi dà solo le categorie con i fornitori, ma mi dà ogni categoria elencati separatamente, quindi se una categoria ha 2 fornitori, ho la categoria due volte nella matrice restituita:
Attualmente sto usando:
named_scope :with_suppliers, :include => :suppliers
e poi a mio avviso che sto usando:
<%= render :partial => 'category', :collection => @categories.find_all{|c| !c.suppliers.empty? } %>
Non esattamente eloquente ma illustrat è quello che sto cercando di ottenere.
definizioni delle classi
class SupplierCategory < AR
has_many :suppliers, :order => "name"
end
class Supplier < AR
belongs_to :supplier
end
Nella classe 'Subbplier' hai significato' appartiene_a: fornitore_categoria'? – klew