猫鼬填充方法查询返回空数组

时间:2018-09-29 03:54:01

标签: mongodb mongoose

我无法查询模型,无法使用.populate方法获取对象的引用文档。这是我的架构:

var userSchema = new Schema({
 firstname: { type: String, required: true, unique: false },
 lastname: { type: String, required: true, unique: false },
 ...
 children: [{type: mongoose.Schema.Types.ObjectId, ref: 'Child'}],
});

var childSchema = new Schema({
 firstname: { type: String, required: true, unique: false },
 lastname: { type: String, required: true, unique: false },
 ...
 legal_guardian_id: [{type: mongoose.Schema.Types.ObjectId, ref: 'User'}],
});

这是我尝试运行查询的方式:

User.findOne({ _id: '5b9d30083e33585cc0b8c710' })
  .populate('children').exec((err, doc) => {
    if (err) { return console.error(err); }
    res.send(doc);
})

这将导致“孩子”:[]

当我只使用findOne方法并返回用户时,我得到了“孩子”:[“ 5b9d3f23d1408c5f4e2624f3”]。

我在做什么错?

0 个答案:

没有答案