如何:key_id
使用此查询进行分组(key_id
是报告表中的一列),并且该查询是模型中的一种方法,称为Project
self.reports.select{ |report| report.level <= 50}
如何:key_id
使用此查询进行分组(key_id
是报告表中的一列),并且该查询是模型中的一种方法,称为Project
self.reports.select{ |report| report.level <= 50}
这应该可以解决问题:
self.reports.select{ |report| report.level <= 50 }.group_by(&:key_id)
.group_by(&:key_id)
是一种简洁的说法.group_by{ |report| report.key_id }
您不想在此处使用带有块的 select 方法。原因是这是在数组上定义的方法,因此返回的是纯 ruby 数组,而不是关系对象。而是这样做:
self.reports.where('level <= ?', 50).group(:key_id)