当前位置: 首页 > 知识库问答 >
问题:

Firebase / Firestore / Angular:如何在文档中创建子集合?

严亮
2023-03-14

这是我的数据库在https://i.stack.imgur.com/3nZMn.png的照片

这是我用来在这个数据库中创建新用户的函数。它正在工作,但是缺少子集合

  create_new_User(docID, email, nickname, userID) {
    return this.fireservices.collection('users').doc(docID).set({
      mail: email,
      nickname: nickname,
      userID: userID
    });
  }

有人有办法解决这个问题吗?

共有1个答案

田嘉澍
2023-03-14

我个人会让用户集合的docId与实际的userId相同,但是您不必这样做。您一次只能创建一个文档,因此您需要批处理或在两个单独的文档写入中运行它们。例如,在没有批处理的情况下,您可以这样做:

create_new_User(userId, email, nickname, routeId, routeParams) {

 this.fireservices.collection('users').doc(userId).set({
          mail: email,
          nickname: nickname,
          userID: userID
        })
            this.fireservices.collection('users').doc(userId).collection('routes').doc(routeId).set({ routeParams })
  }
 类似资料:
  • 在我的集合的SnapshotListener中,我使用以下命令循环遍历文档: 在 for 循环中的每个文档中,让我们称之为 ,我在 Cloud Firestore 上还有另一个文档集合。我想检索内子集合中的所有文档(每个文档只有一个字符串字段)。我能够做一个来获取本身,我用它来获取字符串字段,但我不知道如何获取其子集合中的文档。

  • 我的用户可以在子集合中创建文档(比如任务),并使用一系列安全规则检查身份验证、权限和数据有效性。他们甚至可以选择多个任务并将其复制到同一集合中。现在,一个普通用户可能一次最多创建100个任务,但如果有人恶意获取我的数据库凭据,进行身份验证,并尝试以编程方式创建大量有效文档,该怎么办?这将使Firestore的扩展不会出现问题,也会给我的Firebase账单带来意想不到的惊喜。这是我首先关心的问题,

  • 我试图实现的很简单。只有当数据库不存在时,我才需要在数据库中创建一个用户条目。 应用程序流程: 使用Firebase身份验证(获取UID)创建用户 客户端代码(创建操作): firestore规则: 附加信息: 正如您可能已经知道的那样,代码不起作用。每次我运行客户端代码时,当前用户都会被一个新文档完全替换。但是,如果我从规则中删除以下行,一切都会正常工作: 但现在问题来了,如何保护用户文档中的数

  • 我的FiRecovery数据库中有一个名为Reports的集合,我已经在其中添加了文档。但我现在的问题是我想在报表中添加一个带有子集合的文档,有什么想法吗?

  • 我有一个包含10个文档的产品根集合。每个文档都有100个文档的子集合,没有其他字段。 现在如果我阅读产品收藏的文件 将收取多少次读取费用,由于我正在获取具有10个文档的产品集合的文档,我将收取10次读取费用?或者每个文档都有100个文档的子集合,因此我将收取10*100 =1000文档读取费用?

  • 问题内容: 没有关于如何在Firestore中的文档中添加子集合,如何使用Web应用程序添加子集合的文档? 甚至像这样尝试过,但没有奏效。如何使用代码在应用程序中添加子集合?有什么办法可以做到,还是使用Firebase实时数据库会更好?如果是这样,请让我知道如何在Firebase中执行此操作,我也想这样添加, 但我却收到这样的错误,错误说明了这一点 问题答案: 如果更改为,您的代码应该可以工作。然