通过Active Record获取嵌套对象集合

我试图通过活动记录检索对象列表但没有成功

我有一个模型:商店有很多产品,产品有一个供应商

class Store < ActiveRecord::Base has_many :products end class Product < ActiveRecord::Base belongs_to :supplier belongs_to :store end class Supplier < ActiveRecord::Base has_many :products end 

我想从这样的商店槽产品中获取供应商列表:

 self.products.supplier 

这给了我一个来自ActiveRecord :: Relation的未定义的方法exception’供应商’

我应该为此制作一个自定义查找器还是有更好的方法?

你可以用

 self.products.map{|product| product.suppliers} 

或者你可以这样做,这在我看来更好

 class Store has_many :suppliers, :through => :products end # Then you can use: store.suppliers