如何在快递js中通过id删除多个集合中的记录?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在快递js中通过id删除多个集合中的记录?相关的知识,希望对你有一定的参考价值。
我创建了三个集合,
家庭{familyname,_id}
root {rootname familyId _id}
child {childname rootId familyId _id}
现在如果我删除了family,root和child也应该被删除
到目前为止,我已经尝试过这个但是它没有用
router.delete("/:familyId", (req, res, next) => {
const id = req.params.familyId;
Family.remove({ _id: id })
Root.remove({ _id: id })
Child.remove({ _id: id })
.exec()
.then(result => {
res.status(200).json({
message: 'deleted',
});
})
.catch(err => {
console.log(err);
res.status(500).json({
error: err
});
});
});
答案
您可以使用.remove()
方法返回的promise,如下所示:
router.delete("/:familyId", (req, res, next) => {
const id = req.params.familyId;
const family = Family.remove({ _id: id });
const root = Root.remove({ familyId: id });
const child = Child.remove({ familyId: id });
Promise.all([family, root, child]).then(result => {
console.log(result);
res.status(200).json({
message: 'deleted',
});
}).catch(err => {
console.error(err);
res.status(500).json({
error: err
});
});
});
以上是关于如何在快递js中通过id删除多个集合中的记录?的主要内容,如果未能解决你的问题,请参考以下文章