排除嵌套对象中的Mongoose表字段

tnkciper  于 2022-10-22  发布在  Go
关注(0)|答案(2)|浏览(113)

当我有简单架构时,我使用此方法来获取不带_id字段的所有字段:

var testSchema = mongoose.Schema({
    field1: String
});

testSchema.find({}, { _id: 0, _v: 0}, function(...));

但是当我有一个嵌套的对象时,当我查询它时,它的_id字段就会出现。
我如何做同样的事情-隐藏嵌套对象的_id文件?

var anotherSchema = mongoose.Schema({
    field2: String,
    testField: [testSchema]
});

anotherSchema.find({}, { ???? }, function(...));
yjghlzjz

yjghlzjz1#

我已经找到了解决办法。基于从此处排除字段的替代语法:https://stackoverflow.com/a/24389009/3306465
这对我很管用:

anotherSchema.find({}, '-_id -testField._id', function(...))
jq6vz3qz

jq6vz3qz2#

我认为这应该会奏效:

anotherSchema.find({}, { 'testField._id': 0 })

相关问题