让我们说我在消防站有以下产品集合:
product: {
id: 10
dependencies: [
{ id: 1 },
{ id: 2 }
]
}
product: {
id: 5
dependencies: [
{ id: 1 },
]
}
product: {
id: 6
dependencies: [
{ id: 2 },
{ id: 5 }
]
}
product: {
id: 1
dependencies: []
}
product: {
id: 2
dependencies: []
}
每个产品可能都有其自己的依存关系,这些依存关系在数组中列为与ID相关联的对象。我想知道用ID
实施删除产品的最佳方法是什么,以便所有其他依赖于ID
的产品也将被删除。
一些用例:
如果我使用id: 2
删除产品,则应该删除以下产品:id:6
,id:10
。
如果我使用id: 1
删除产品,则应该删除以下产品:id:10
和id:5
。而且,由于带有id:5
的产品与产品id:6
的依赖关系,产品id:6
也应删除。
在猫鼬中,我使用的是Schema.pre('remove', Function)
。
用Firestore实现特定行为的最佳方法是什么?有建议吗?