我无法查询模型,无法使用.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”]。
我在做什么错?