繁体   English   中英

使用MeteorJS从MongoDB中的多个集合中删除文档

[英]Removing document from multiple collections in MongoDB with MeteorJS

我有5个馆藏-A,B,C,D,E。我有一个文档存储在A中,并且与其他4个馆藏中的文档相关。 我正在使用MeteorJS。 现在,我必须安全删除文档中的数据。 换句话说,必须在A中删除该文档,并在其他文档中删除其引用。 只有将它们全部删除后,我才必须向用户显示成功消息。 现在,我只有:

A.remove(documentID);

我必须在这里使用回调来向用户显示结果。 我对MongoDB完全陌生,并且了解无法像SQL那样在这里级联删除行。 我不知道如何编写代码,该代码将从所有集合中删除文档及其引用(全部由documentID引用),并将结果显示给用户。 有人可以帮忙吗? 非常感谢!

您正在寻找收集挂钩: https : //github.com/matb33/meteor-collection-hooks

集合挂钩允许您在对集合进行插入/更新/删除之前/之后执行代码。 使用您的示例,您可以创建一个类似于以下内容的集合挂钩:

A.after.remove(function(userId, doc) {
    B.remove({AReference: doc._id});
    C.remove({AReference: doc._id});
    D.remove({AReference: doc._id});
    E.remove({AReference: doc._id});
});

无论您的相关领域是什么,AReference都将是必需的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM