Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Mongo中的Ruby查询中同时使用$or、$in和$size in?_Ruby_Mongodb - Fatal编程技术网

如何在Mongo中的Ruby查询中同时使用$or、$in和$size in?

如何在Mongo中的Ruby查询中同时使用$or、$in和$size in?,ruby,mongodb,Ruby,Mongodb,我试图找出如何在复杂查询中编写以下Mongo查询:{$or:[{field:{$in:[X]},{field:{$size:0}}]} 当前我的查询生成器如下所示: 所有被注释掉的东西都是我尝试过的,但没有成功。我能得到的最接近的是这个query[:dma\u code]={'$or'=>[{'dma\u code'=>{'$in'=>[@bid\u request[:geo][:dma]]},{'dma\u code'=>{'$size'=>0}} 我仍然收到以下错误: Read error:

我试图找出如何在复杂查询中编写以下Mongo查询:
{$or:[{field:{$in:[X]},{field:{$size:0}}]}

当前我的查询生成器如下所示:

所有被注释掉的东西都是我尝试过的,但没有成功。我能得到的最接近的是这个
query[:dma\u code]={'$or'=>[{'dma\u code'=>{'$in'=>[@bid\u request[:geo][:dma]]},{'dma\u code'=>{'$size'=>0}}

我仍然收到以下错误:

Read error: #<NoMethodError: undefined method `name' for #<Mongo::OperationFailure: invalid operator: $or>>
Mongo::OperationFailure - invalid operator: $or:

读取错误:#我想您需要这个:

query['$or'] = [{'dma_codes' => {'$in' => [@bid_request[:geo][:dma]]}},{'dma_codes' => { '$size' => 0}}]
但我不太了解鲁比