Firebase Firestore子集合id

Firebase Firestore子集合id,firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,我有没有办法在firestore中获取子集合的ID?我制作了一个应用程序,如果我手动输入子集合的ID,它就可以工作,所以我想避免这种情况 在图片中,我添加了403p2bY。。。。。是user.uid,我可以使用相同的。但是关于钱包的id,我需要手动输入id。有没有办法解决这个问题?谢谢 子集合名称的工作原理与顶级集合名称相同:您必须知道名称才能使用它。如果您不知道名称,您将无法查询其中的文档。移动客户端SDK也不提供任何列出子集合的方法,因此 如果您无法知道要查询的子集合的名称,那么子集合可能不

我有没有办法在firestore中获取子集合的ID?我制作了一个应用程序,如果我手动输入子集合的ID,它就可以工作,所以我想避免这种情况

在图片中,我添加了403p2bY。。。。。是user.uid,我可以使用相同的。但是关于钱包的id,我需要手动输入id。有没有办法解决这个问题?谢谢


子集合名称的工作原理与顶级集合名称相同:您必须知道名称才能使用它。如果您不知道名称,您将无法查询其中的文档。移动客户端SDK也不提供任何列出子集合的方法,因此


如果您无法知道要查询的子集合的名称,那么子集合可能不是组织数据的最佳方式。

子集合名称的工作方式与顶级集合名称类似:您必须知道名称才能使用它。如果您不知道名称,您将无法查询其中的文档。移动客户端SDK也不提供任何列出子集合的方法,因此


如果您无法知道要查询的子集合的名称,那么子集合可能不是组织数据的最佳方式。

您可以使用
db.collection('users').doc(user.uid).collection('wallet').get(),为用户获取所有钱包文档,然后,您可以在结果上循环并打印
doc.id
,以获得每个id:

db.collection('users').doc(user.uid).collection('wallet').get().then(function(querySnapshot) {
  querySnapshot.forEach(function(doc) {
    console.log(doc.id, " => ", doc.data());
  });
});

另请参见上的Firebase文档。

您可以使用
db.collection('users').doc(user.uid).collection('wallet').get()
为用户获取所有钱包文档,然后您可以循环查看结果并打印
doc.id
,以获取每个id:

db.collection('users').doc(user.uid).collection('wallet').get().then(function(querySnapshot) {
  querySnapshot.forEach(function(doc) {
    console.log(doc.id, " => ", doc.data());
  });
});

另请参阅上的Firebase文档。

我不确定是否理解正确,因为在您的案例中,两个收藏名称(
用户
钱包
)似乎都是固定的。您是否正在尝试为已知用户获取所有
钱包
文档?是。db.collection('users').doc(user.uid).get().then(doc=>{…})\\这工作很好db.collection('users').doc(user.uid).collection('wallet').doc('iMsV7wV1lZIyekKrv6Gr').get()。then(doc=>{…})\\这行中没有硬编码钱包id,而是有任何内置函数来获取钱包id。是的,我正在尝试获取特定用户的钱包文档。我希望这是一个常规过程,因为我不想每次需要为唯一用户输入一些文档时都输入钱包id。
db.collection('users').doc(user.uid)。collection('wallet').get()
将为您获取所有钱包文档,然后,您可以循环查看结果并打印
doc.id
,以获取每个id。另外,我不确定自己是否理解正确,因为这两个集合名称(
users
wallet
)在您的情况下似乎都是固定的。您是否正在尝试为已知用户获取所有
钱包
文档?是。db.collection('users').doc(user.uid).get().then(doc=>{…})\\这工作很好db.collection('users').doc(user.uid).collection('wallet').doc('iMsV7wV1lZIyekKrv6Gr').get()。then(doc=>{…})\\这行中没有硬编码钱包id,而是有任何内置函数来获取钱包id。是的,我正在尝试获取特定用户的钱包文档。我希望这是一个通用的过程,因为我不想每次需要为唯一用户输入一些文档时都输入钱包id。
db.collection('users').doc(user.uid)。collection('wallet').get()
将获取所有钱包文档,然后您可以循环结果并打印
doc.id
,以获取每个id。另请参阅