我有一个看起来像这样的模型:
Issue(id, ..., tracker_id)
|
Tracker(id, ..., name)
Issue has_one :tracker
Tracker has_many :issues
我想获得每个跟踪器的问题数量。我得到的是:
Issue.group(:tracker_id).count => {3=>446, 5=>247, 9=>2, 11=>560}
但我不想按tracker_id
进行分组,而是按tracker_name
进行分组,以获取此信息:
{"name_1"=>446, "name_2"=>247, "name_3"=>2, "another_name"=>560}
有没有办法直接执行此操作,没有任何映射操作/哈希重命名?
答案 0 :(得分:2)
有一种方法:
Issue.joins(:tracker).group('trackers.name').count