我有一个如下所示的用户架构,我试图填充实时项目数组,但我不知道如何访问它。
const userSchema = new Schema({
local: {
email: String,
username: String,
password: String,
liveProjects: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'liveProject'
}]
},
google: {
googleId: String,
email: String,
username: String,
liveProjects: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'liveProject'
}]
}
});
const User = mongoose.model('user', userSchema);
module.exports = User;
如果没有嵌入,我可以使用
User.findById(id).populate('liveProjects').exec((err,projects)=>{});
但是如何获得对
'local.liveProjects'
或'google.liveProjects'
的访问权限,以便可以填充它们? 最佳答案
事实证明它就像
User.findById(id).populate('local.liveProjects').exec((err,projects)=>{});
关于node.js - 用 Mongoose 填充嵌套数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47982644/