0
問題是我無法使用下一個模式從貓鼬中的對象中刪除附件。從另一個數組中的數組中移除元素,使用貓鼬
var question=mongoose.Schema({
_id:mongoose.Schema.Types.ObjectId
answers:[{
_id:mongoose.Schema.Types.ObjectId
attachments:[
_id:mongoose.Schema.Types.ObjectId
]
}]
});
我嘗試從與下一個代碼文檔中刪除的附件。
Question.update({
_id: req.params.idQuestion,
'answers._id': req.params.idAnswer
}, {
$pull: {
'answers.$.attachments':{_id:req.params.idAttachment}
}
}, function (err, updated) {
if(err){
return res.status(400).send(err);
}
else if(!updated.nModified){
return res.status(400).send('Question hasn\t been updated.');
}
res.send(200);
});
我以爲我的查詢是不正確的,並試圖這樣做,在蒙戈外殼。它工作完美。
db.questions.update({
_id:ObjectId('xx'),
'answers._id':ObjectId('yy')
},{
$pull:{
'answers.$.attachments':{_id:ObjectId('zz')}
}
})
有人可以幫我解決這個問題?
你是在暗示去除附着在不使用貓鼬對象? – user2542231
是的。查找字段,修改字段,將字段寫入數據庫。數組,字符串或日期...不管 –