gpt4 book ai didi

database - 该文档不存在,不会出现在查询或快照中,但结构相同的文档有效

转载 作者:太空狗 更新时间:2023-10-30 01:48:04 24 4
gpt4 key购买 nike

前言:这个问题已经有人问了here但用户放弃并给出了第一个答案的解决方案。这道题的不同之处还在于,我有两个相似的集合结构,但错误只发生在其中一个上。

我正在使用 Google 的新 firestore 数据库,并创建了以下结构:territory/{list of territory}/dispatches/{list of dispatches}/{dispatch information}

我们正在使用 this method使用 Firebase Admin SDK 在我们的后端创建自定义 token 。当用户登录我们的后端时,我们生成 token 并将他们有权访问的区域添加为附加声明,我们打算从我们的安全规则中的 auth/request.auth 对象访问这些区域以限制他们对调度文档的访问因此。我提到这一点是为了防止我们错误地处理结构,在这种情况下请纠正我,因为我们是 Firestore 的新手。

我们遇到的问题是其中一个文档发出警告:“该文档不存在,不会出现在查询或快照中”(见下图)。但是,我们有一个相同的文档结构(图中的文档 7),它没有给出此警告,但确实出现在查询和快照中。 enter image description here

最佳答案

这告诉您 territories/6 并不作为实际文档存在,而 territories/7 确实存在。

在 Cloud Firestore 中,“虚拟”文档可以拥有子集合 - 即更高级别的文档不存在,但它有子集合。

这些虚拟文档可以成为组织信息的简便方法,而无需创建重复的虚拟文档。

在这种情况下,您要么:

  1. 之前在territories/6下创建了一堆调度文件您创建了 territories 文档,或者
  2. 您随后删除了 territories/6 而没有删除子集合文档。

关于database - 该文档不存在,不会出现在查询或快照中,但结构相同的文档有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47043651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com