我試圖填充貓鼬模型,我只希望返回的項目是與ID匹配的項目。貓鼬,填充ID是特定於項目參考
編輯更新:在下面的User模型中,我需要先通過id找到正確的用戶,然後對於task
屬性,我需要填充它,其中projectID
匹配req.params.ID
。我怎樣才能填充projectID
匹配req.params.ID
的任務。我已經包括了我的全部用戶模型以及任務模式
//用戶模式
var UserSchema = new Schema({
name: {
type: String,
trim: true,
required: "First Name is Required"
},
username: {
type: String,
trim: true,
required: "Username is Required"
},
skills: {
type: String,
trim : true
},
avatar: {
type: String
},
SQLid: {
type: Number
},
userCreated: {
type: Date,
default: Date.now
},
lastUpdated: {
type: Date
},
adminTeams: [{
type: Schema.Types.ObjectId,
ref: "Team"
}],
team: [{
type: Schema.Types.ObjectId,
ref: "Team"
}],
task: [{
projectID: {
type: String
},
theTask: {
type: Schema.Types.ObjectId,
ref: "Task"
}
}]
});
//任務模式
var TodoSchema = new Schema({
task: {
type: String
}
});
如何我只得到填充task
在專案編號等於一個特定的ID。我試過
User.findById({ "_id": req.params.id }).populate({ path: 'task', match: {projectID: req.params.pID}, select: 'theTask' })
.exec(function(err, docs){
console.log("POPULATE TASKS DOCS", docs)
但是這表明文檔是空的。
我想這一點,但它返回任務和項目的_id,而不是實際的任務。我已經包含了我的完整用戶模型和任務模型 – henhen