Mongoose查询父级并包含引用的子级

时间:2017-12-28 00:05:49

标签: node.js mongodb express mongoose

我有2个猫鼬模式。位置和地点。我需要能够在查询地点时提取位置信息,并且与populate一起使用时效果很好。但是在另一种情况下,我需要找到属于位置的所有地方。

这是否意味着我还需要在位置架构中引用位置?多个地方可以属于单个地点。我无法将地点嵌入到位,因为地方会有子信息,而且我不希望地点文档因此而变得太大。

var LocationSchema = new mongoose.Schema({
  name: {
    type: String,
  },
}); 

var PlaceSchema = new mongoose.Schema({
  location: {type: mongoose.Schema.Types.ObjectId, ref: 'Location'},
  type: String,
});  

1 个答案:

答案 0 :(得分:1)

您只需要按位置ID进行查询。

Places.find({location: { $in: [location ids] }}).then(places => {...})