[英]MongoDB: Cannot add to a Sub-document of a Sub-document
我正在嘗試使用貓鼬將問題添加到問題數組。 但是貓鼬說我正在訪問的數據是不確定的。
{"content":
{"_id":"58c6f76e06e6edda1b000007",
"name":"testCourse",
"__v":0,
"subjects":
[{"name":"testSubject",
"_id":"58c6f85280a5d6591c000007",
"questions":[]}
]
}
}
這是我創建條目的方法:
module.exports.makeQuestion = function(req, res){
var courseid = req.params.courseid;
var subjectid = req.params.subjectid;
console.log("cou:"+ courseid + " sub:"+ subjectid);
Course.findById(courseid, function(err, course){
course.subjects.questions.push({question: req.params.question,
answer:req.params.answer})
sendJSONResponse(res, 200, course);
});
}
添加條目時出現什么錯誤?
這是因為course.subjects
是一個數組。 因此,它不知道要將對象推送到哪個子文檔。 為了解決這個問題,您可以執行course.subjects.id(_id).questions.push(question)
,如果您知道子文檔對象的ID,該代碼應該可以工作。 否則,您必須遍歷數組以查找所需的數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.