0
我有一個JSON格式如下:貓鼬 - 刪除數組元素的更新
{
_id:5522ff94a1863450179abd33,
userName:'bill',
__v:3,
friends:[
{
_id:55156119ec0b97ec217d8197,
firstName:'John',
lastName:'Doe',
username:'johnDoe'
},
{
_id:5515ce05207842d412c07e03,
lastName:'Adam',
firstName:'Foo',
username:'adamFoo'
}
]
}
而且我想刪除整個相應子陣。比如我想刪除用戶李四與ID 55156119ec0b97ec217d8197
這樣的結果將是:
{
_id:5522ff94a1863450179abd33,
userName:'bill',
__v:3,
friends:[
{
_id:5515ce05207842d412c07e03,
lastName:'Adam',
firstName:'Foo',
username:'adamFoo'
}
]
}
到目前爲止,我有這樣的:
exports.delete = function (req, res) {
var friends = req.friends[0];
friends.update(
{'_id': req.body.friendsId},
{$pull: {'friends.friends': {_id: req.body.friendId}}}, function (err) {
if (err) {
return res.status(400).send({
message: getErrorMessage(err)
});
} else {
res.json(friends);
}
});
};
但是沒有結果,也我沒有得到任何錯誤,它會保持與以前一樣。 req.body.friendsId
是主陣列的ID,req.body.friendId
是我想要拉的特定用戶的ID。
非常感謝,問題出在朋友對象 –