在猫鼬中

我可以声明架构,也可以使用

DBRef

这只是放置ObjectId或ObjectId数组

并填充(获取)这些项目。

我认为当需要删除DBRef时会出现问题。

有什么办法可以同步删除DBref吗?

例如


从数组中删除DBRef应该删除其他集合中的DBRef,也应该从其他集合中的DBRef数组中删除该DBRef。
删除文档(此文档的Schema中的DBRef)也会删除其他集合中的DBRef,并且还会从其他集合中的DBRef数组中拉出该DBRef。


这些可能吗?如果是这样,我如何实现这些目标?或其他模型设计建议?

最佳答案

您可以使用schema.pre('remove', ... middleware在其他集合中实现对ObjectId引用的级联删除。 this._id标识在中间件功能中要删除的文档。

关于node.js - Mongoose DBRef删除原始架构删除以删除DBRef并从DBRef阵列中拔出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11519059/

10-09 17:48