从activerecord关系中提取对象的最佳方法

时间:2014-09-19 18:31:34

标签: ruby-on-rails activerecord

迭代活动关系的最佳方法是什么。假设我有一个活动的关系对象返回。我想把它分解成他们父母的相应类别。我有12个产品类别,我正在构建12个下拉菜单!

产品属于类别 产品有很多最爱 用户has_many:产品,通过::收藏夹

Favorite.includes(:product).where('user_id = ?', current_user.id).each do |favorite|
...?...
end 

1 个答案:

答案 0 :(得分:0)

你可以尝试类似的东西:

grouped_favorites = Favorite.includes(:product => :category)
                            .where('user_id = ?', current_user.id)
                            .group_by {|favorite| favorite.product.category }

grouped_favorites.each do |category, favorites|
   favorites.each do |favorite|
     ...?...
   end
end