【问题标题】:How to create collection in Cloud Firestore from Javascript?如何从 Javascript 在 Cloud Firestore 中创建集合?
【发布时间】:2018-05-31 23:06:17
【问题描述】:

当用户在我的 Angular 应用中创建帐户时,我的应用会使用电子邮件和密码创建用户帐户(使用 Firebase API)。但我也想创建新的集合来保存更多的数据,比如名字、姓氏......

每个集合的名称都会有 uid。 但是不知道怎么强求? db.createCollection('abcXdefX') 不存在。 我不知道该怎么办。请帮忙。

【问题讨论】:

    标签: angular firebase firebase-realtime-database firebase-authentication google-cloud-firestore


    【解决方案1】:

    在 Firestore 中,当您将文档添加到不存在的集合中时,无需专门创建该集合即可创建该集合。例如,

    firebase.firestore().collection("new-coll").add({"Hello":"World"})

    如果集合new-coll 不存在,则创建它,并将文档{"Hello": "World"} 添加到其中。

    【讨论】:

      【解决方案2】:

      您还可以在集合内创建文档。您不必每次都创建不同的集合。

      db.collection("users").doc("userid").set({
          username: 'username',
          password: 'password', 
          email: 'email', 
          age: 'age' 
      })
      

      【讨论】:

        【解决方案3】:

        我试图在文档中创建一个集合,但接受的答案对我不起作用,但这样做:

        db
            .collection("coll1")
            .doc("doc1")
            .collection("newCollectionName")
            .doc("newDocName")
            .set(data);
        

        【讨论】:

          【解决方案4】:

          你不能创建空集合,你必须在里面创建文档。 data model

          function writeUserData(userId, name, email, imageUrl) {
                firebase.database().ref('users/' + userId).set({
                  username: name,
                  email: email,
                  profile_picture : imageUrl
                });
              }
          

          可以通过这种方式获取用户id

          var userId = firebase.auth().currentUser.uid;
          

          对于云火库

          db.doc(userId + '/data').set({
            name: name,
            email: email
          });
          

          firebase doc - read&write

          【讨论】:

          • 感谢您的回答,但我不想拥有“用户”收藏。集合的名称是 userId。
          • 所以把路径改成这样:firebase.database().ref(userId)
          • 您无法创建空集合,因此您需要创建一些文档,例如 db.collection(userId).doc("data").set({ name: "username" })
          猜你喜欢
          • 1970-01-01
          • 2018-11-24
          • 1970-01-01
          • 2021-11-14
          • 2019-09-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多