我在使用Mongoose删除MongoDB文档中的所有子文档时遇到问题。
此代码来自使用 Express.js :
的路线router.delete('/all', (req, res) => {
Customers.update(
{_id: req['customer']},
{$pull: {addresses: {_id: {$exists: true}}}},
{safe: true},
(err, address) => { res.json(address); }
);
});
这就是我正在尝试的,但没有任何反应。我还尝试使用其他代码,即:
router.delete('/all', (req, res) => {
let customer = req['customer'];
customer.addresses.forEach((doc, index) => {
let address = customer.addresses[index];
customer.addresses.remove(address._id);
customer.save();
});
res.json({ok: 1});
});
但是这段代码只删除了一些子文档,而不是全部,我不知道为什么。