我有一个 UserProfile 列表,它可能(或可能不)有一个或多个小部件:
class UserProfile < ActiveRecord::Base
has_many :widgets
end
@all_profiles = UserProfile.joins(:widgets).group('user_profiles.id').order("name ASC")
在索引视图中,不是在视图的每一行中执行新查询来获取小部件的计数@all_profile.each
,有没有办法在原始视图中添加一个计数列,以显示每个分组行中有多少小部件?(例如,如果有 N 个 @all_profiles ,避免重新查询数据库 N 次?
(这不仅对于避免 N 额外查询很重要,而且允许我们在计数列上添加一个 SORT 选项,以便我们可以按拥有最多小部件的客户进行排序)