gpt4 book ai didi

mongoose-populate - Mongoose 填充嵌套文档的匹配条件

转载 作者:行者123 更新时间:2023-12-04 14:07:14 32 4
gpt4 key购买 nike

我有一个像这样的 Mongoose 模式:

var Address = {
doorNo:String,
city:String,
state:String,
country:String,
district:String,
zipCode:String,
area:String,
locality:String
};

var StoreSchema = {
name:String,
address:Address,
category:[String],
products:[{ type:Schema.ObjectId, ref:"Product" }],
};

var ProductSchema = {
name:String,
description:String,
category:String,
subCategory:String,
store: { type:Schema.ObjectId, ref:"Store", childPath:"products" }
};

我需要根据产品类别和地址城市过滤产品。仅获取属于特定位置(地址架构中的城市)和特定类别的产品。

我尝试了以下代码:

Product
.find({'category':'accessories'})
.populate({
path: 'store',
match: { 'address.city': req.params.location},
select:'_id'

})

现在这将返回类别匹配的所有产品,但只要位置过滤器不满足,它就会返回一个值为空的商店,并在满足位置过滤器的任何地方返回商店。

最佳答案

在 Mongoose 5.2.7 中,语法 match: { 'x.y': 'something' } 很有魅力

关于mongoose-populate - Mongoose 填充嵌套文档的匹配条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39172614/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com