Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.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/12.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
Node.js $elemMatch返回假阳性_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js $elemMatch返回假阳性

Node.js $elemMatch返回假阳性,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我的查询: { 'objects.item.opts1.opts2': { '$elemMatch': [ { name: 'false' } ] } } var MySchema = new Schema({ objects: { item: { opts1: [{ opts2: [{ name: { type: String }, }]

我的查询:

{ 'objects.item.opts1.opts2': { '$elemMatch': [ { name: 'false' } ] } }
var MySchema = new Schema({
    objects: {
        item: {
            opts1: [{
                opts2: [{
                    name:   { type: String },
                }]
            }],      
        },
});
返回:数组opts2中包含任何内容的任何项目,即使我将“name”更改为某个不存在的字段,结果也将始终相同

猫鼬模式:

{ 'objects.item.opts1.opts2': { '$elemMatch': [ { name: 'false' } ] } }
var MySchema = new Schema({
    objects: {
        item: {
            opts1: [{
                opts2: [{
                    name:   { type: String },
                }]
            }],      
        },
});

在$elemMatch中使用以下wihout数组

{ 'objects.item.opts1.opts2': { '$elemMatch': { name: 'false' } } }

在$elemMatch中使用以下wihout数组

{ 'objects.item.opts1.opts2': { '$elemMatch': { name: 'false' } } }

{'objects.item.opts1.opts2':{'elemMatch':{name:'false'}}}在没有数组的情况下在$elemMatch中尝试此操作。就是这样!谢谢@ShreyanceJain@ShreyanceJain你能把它写下来作为答案吗?@chridam当然我只是想在评论中写它,因为它看起来像一个打字错误{'objects.item.opts1.opts2':{'elemMatch':{name:'false'}}}}在$elemMatch中不使用数组试试这个。就是这样!谢谢@ShreyanceJain@ShreyanceJain“你能把它写下来作为答案吗?”@chridam当然,我只是想把它写在评论里,因为它看起来像一个打字错误