0
说我有一个mongoid文档,其中有一个字段:pairs
与散列的类型。当我不想在这样的哈希上查询时:Mongoid where子句红宝石散列
Doc.where(:pairs=>{"field1"=>1})
我得到的结果回来,因为我有成对的字段值为1。我也有超过1
的值。当我这样做,nil
返回:
Doc.where(:pairs=>{"field1"=>{"$gt"=>0}})
这似乎并没有工作,我确实有关键field1
对和值大于0
。任何人都可以提供我为什么这不起作用的信息?
@ganesh使用该查询,您不指定哪个散列键应具有大于0的值,但散列中的所有键:对,以便可能会返回比预期更多的文档。由于另一个带有hash:pairs的文档可以有一个键值为2的字段2和一个值为2的字段1,你提供的查询也会返回这个文档,而在我的问题中它不应该。 – Tinuz77 2013-03-06 11:20:22