// 創(chuàng)建一個(gè)人物數(shù)據(jù)結(jié)構(gòu)
let personSchema = mongoose.Schema({
_id:Number,
name:String,
post:[{
type:Number,
ref:'postModel'
}]
});
console.log(mongoose.Schema.ObjectId);
// 根據(jù)結(jié)構(gòu)生成人物模型
let personModel = mongoose.model('person',personSchema);
let ObjectId = mongoose.Types.ObjectId;
// 創(chuàng)建一個(gè)文章數(shù)據(jù)結(jié)構(gòu)
let postSchema = mongoose.Schema({
_id:Number,
title:String,
author:{
type:Number,
ref:'personModel'
},
content:String
});
// 創(chuàng)建文章模型
let postModel = mongoose.model('post',postSchema);
postModel.find({})
.populate('people')
.exec((err,data)=>{
console.log(data)
});
Quelle est la raison de cela??
J'ai changé de requête en utilisant ObjectId et j'ai obtenu le même résultat, version mangouste 4.10.6, version n?ud 8.1.0
post:[{
type:Schema.ObjectId,
ref:'postModel'
}]
Notez égalementref
的字段要和你注冊(cè)的model
的名稱一致, 否則populate
L'opération ne réussira pas
Référez-vous à ceci
https://github.com/YueminHu/l...
Il est recommandé d'étudier l'exemple de la bibliothèque MDN