开发者问题收集

Firestore 参考

2020-10-02
164

我使用 Cloud Firestore 数据库并通过引用链接了集合的某些条目。

现在我遇到了一个问题,如果我删除引用文档,引用仍然存在,但引用的文档不再存在。

这里的计划是什么,这是一种错误的引用方法吗?

Article {
   name: string;
   price: number;
}

OrderEntry {
   name: string;
   article: Reference;
}

如果我现在删除一篇文章,引用仍然存在于 OrderEntry 上,但文章不再存在。

删除项目时,我可以检查它是否在另一个实体中被引用吗?

1个回答

实现此目的的唯一方法是查询具有已知字段的文档,该字段可以包含对已删除文档的引用。Firestore 不会为您执行此操作 - 它不关心具有现有引用的文档是否被删除。

您可以像 Firestore 中的任何其他查询一样查询引用。只需传递 DocumentReference 对象作为可以包含其值的字段的值即可。

Doug Stevenson
2020-10-02