【发布时间】:2011-11-18 04:40:38
【问题描述】:
我有一个 Person 对象,它有_many 家公司。我想找至少一家公司的人。 我现在能得到的是
Person.where(:company_ids.size => 1)
这将返回一个公司的所有人。但我需要类似的东西
Person.where(:company_ids.size.gte => 1)
但好像,这行不通。
解决方案:
很抱歉给您带来了麻烦,但发现对于以前创建的 objects ,我没有 company_ids ...因为我只是后来才添加的。我可以通过以下方式获得计数:
Person.where(:company_ids.exists => true).and("this.company_ids.length > 0")
感谢大家的帮助。
【问题讨论】:
-
company_ids 是个人文档中的数组字段吗?
-
是的 company_ids 是一个数组字段。下面提供的解决方案似乎不起作用。
标签: ruby-on-rails-3 mongodb ruby-on-rails-3.1 mongoid