【发布时间】:2022-09-24 21:12:54
【问题描述】:
我有一个骑收藏与旅行作为一个领域,旅行是键不同的映射年.我想查询集合但在每次旅行中排除乘客字段
const ride = new Schema(
{
boat_operator: {
type: Schema.Types.ObjectId,
required: true,
ref: \'User\'
},
trips: {
type: Map,
of: {
passengers: [{ type: Schema.Types.ObjectId, ref: \'User\' }],
available_seats: { type: Number, required: true }
},
default: new Map()
}
}
)
我试过这个
const rides = await Ride.find({ status: \'waiting\' }).select(\"-trips.*.passengers\")
我试图选择所有项目价值然后删除每个中相应的乘客字段
它没有效果
这就是响应的样子
[
{
\"_id\": \"632a1669279c86f4ab3a4bf5\",
\"boat_operator\": \"6328c434a98212a7f57c4edc\",
\"trips\": {
\"2019\": {
\"passengers\": [],
\"available_seats\": 5,
\"_id\": \"632a1669279c86f4ab3a4bfe\"
},
\"2020\": {
\"passengers\": [],
\"available_seats\": 5,
\"_id\": \"632a1669279c86f4ab3a4bfc\"
},
\"2021\": {
\"passengers\": [],
\"available_seats\": 5,
\"_id\": \"632a1669279c86f4ab3a4bfa\"
},
\"2022\": {
\"passengers\": [],
\"available_seats\": 5,
\"_id\": \"632a1669279c86f4ab3a4bf8\"
}
}
}
]
我想在返回的文档中排除乘客字段
标签: javascript node.js mongodb mongoose