如何将数据作为子集合添加到firebase颤振中的所有用户文档?
Posted
技术标签:
【中文标题】如何将数据作为子集合添加到firebase颤振中的所有用户文档?【英文标题】:How to add data as subcollection to all user's document in firebase flutter? 【发布时间】:2021-12-12 12:38:09 【问题描述】:这些是我的“LoanFriends”收藏中的用户:
这些是我想在每个用户内部添加的数据。
这是我的 Cloud Firestore 屏幕截图:
如何为我添加的每个用户创建不同的数据子集合? 我现在所做的导致我为不同的用户获得相同的数据,这是不对的。
【问题讨论】:
您需要为现有用户添加一个sobcollection吗?还是给新加入的人? 用户由 list.view 构建器创建。我想为每个用户添加一个子集合。我的意思是每个用户都必须有 ReceivedLoanData 和 GaveLoanData 的子集合。 好的,但是您想添加到现有数据或从现在开始的新数据中? 对不起,我是新手,我想要的是将集合“GaveLoanData”和“ReceivedLoanData”存储在每个“LoanFriends”集合的用户中。我希望我已经澄清了足够让你理解我的问题 您要为现有数据还是为新数据? 【参考方案1】:根据我的问题:
您要为现有数据还是为新数据添加子集合?
你的答案:
好的,对于现有数据。
要解决这个问题,您必须迭代整个“LoanFriends”集合,阅读文档,并且对于找到的每个文档,您必须调用.collection('ReceivedLoanData')
和.collection('GaveLoanData')
。紧接着,链接add() 函数调用以在每个子集合的正下方添加所需的文档。
编辑:
根据你上一条评论:
如果是新数据,你能解释一下我必须做什么
然后你必须创建另一个引用:
var receivedLoanDataRef = db.collection("LoanFriends").document(docId)
.collection("ReceivedLoanData");
并相应地添加数据:
receivedLoanDataRef.add(data);
【讨论】:
如果是新数据,你能解释一下我必须做什么 请查看我更新的答案。现在可以了吗? 好的,新数据就是我要查找的数据,您能解释一下我如何访问每个不同 LoanFriends 文档的文档 ID。好像我创建了您提到的子集合,但是该子集合的数据,即每个文档中的数量和详细信息都相同,这很荒谬 没有看到您正在使用的整个代码,我无法提供太多帮助。所以请使用自己的MCVE 在 *** 上发布一个新问题,以便我和其他 Firebase 开发人员可以帮助您。 我去看看,如果我知道答案,我会写信给你。以上是关于如何将数据作为子集合添加到firebase颤振中的所有用户文档?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Firebase + Firestore + Flutter 中使用 StreamBuilder 将所有子集合数据获取到 Widget
如何在 Firestore 中获取生成的文档 ID,然后将子集合添加到其中?
如何从 React JS 中的 firebase 文档的所有子集合中获取数据? [复制]