【发布时间】:2015-11-19 21:44:17
【问题描述】:
我有一份父母名单,他们有很多孩子,每个孩子只有一项技能。父母与孩子是多对多的关系,孩子也可以拥有相同的技能。
我正在尝试获取所有父母的列表,并添加一个计数字段,说明他们有多少具有特定技能的孩子。这可能与活动记录吗?
我当前的解决方案使用这个Parent.joins(:children).select('parents.*, COUNT(*) AS child_count').group('parents.id').where(children: {skill_name: skill})
但是,这不会返回 child_count 计数为 0 的父母。有没有办法用 Active Record 来完成这个?我想为每个父母返回 JSON,计算他们有多少孩子拥有特定技能。
【问题讨论】:
标签: ruby-on-rails postgresql activerecord