猫鼬和嵌套数组
我的架构猫鼬和嵌套数组
let citySchema = new mongoose.Schema({ ...
});
let countrySchema = new mongoose.Schema({
regions : [{
cities : [ref: 'City']
}]
});
问题 - 如何插入现有城市到选择的(通过_id)区。一个区域的_id是由猫鼬/ mongodb自动添加的,我不想改变它,因为它应该保持稳定。
我目前尝试了findOneAndUpdate
的各种组合,但徒劳无益。我当前的查询:
Country .findOneAndUpdate({
_id : knownCountryId,
'regions._id' : knownRegionId
},{
$push : { 'regions.$.cities' : existingCity._id }
},{
select : {
'regions' : {
$elemMatch : {
_id : knownRegionId
}
}
}
}).exec();
任何提示?
回答:
该findOneAndUpdate
查询是正确的。测试中存在的问题是缓存了Country
对象的过时值。
以上是 猫鼬和嵌套数组 的全部内容, 来源链接: utcz.com/qa/265874.html