2
我想使用rails辅助方法uniq
,但不确定它为什么不起作用。您的帮助会非常赞赏Rails的UNIQ方法不工作 - Rails 4
- 我有申请表列表例如:3种形式 的申请表格
- 2是妇女和1是由一个人
- 的申请表2是由同一个女人
@forms.count
=3
@forms.female_applicants.count
=2
@forms.female_applicants.uniq.count
=给我2
但俺们WER应该1
型号
Form
属于user
User
有许多forms
User
属于category_gender
Category_gender
有许多users
Form.rb
scope :female_applicants, ->() { joins(:category_gender).where('category_genders.name' => "Female") }
我的问题:如果同一个女人有2种形式,可能一个好心告诉我如何 显示数的形式唯一为1而不是2.所以当 查询
@forms.female_applicants.uniq.count
结果将是1
而不是2
如果不是使用uniq
方法,如果告诉
这听起来像有可能的非唯一元素你@结果。如果在rails控制台中键入'@ forms.female_applicants'并查看结果输出,则可能会看到在整个集合中不唯一的数据片段。也许你可以尝试这个并将它添加到你的原始问题。 – Dan
我试着写这样的'@ forms.female_applicants.where(user:user_id).count',但没有运气 – ARTLoe
这给了正确的答案'@ forms.female_applicants.group_by(&:user).count' - 给了一个计数'1' - 我可能是错的 - 任何意见将不胜感激 – ARTLoe