【发布时间】:2020-08-16 23:42:21
【问题描述】:
我的 Firebase 数据库包含 2 个名称为“collectionA”和“collectionB”的集合,它们都包含不同的文档。他们都有规则允许经过身份验证的用户读写(但是我无论如何都没有获得权限错误)。问题是当我获得对 collectionA 和 B 的引用时:
var docRefA = db.collection("collectionA")
var docRefB = db.collection("collectionB")
集合 A 检索带有其各自文档的文档,但集合 B 返回空文档。我仍然可以成功地写入集合 B,所以我知道 docRef 没有错。如果我不知道的集合之间有任何差异,我将附上实际集合的图像: collection A and B - “users” 集合是 collectionA 而“store_exercises” 是 B。我看到的唯一区别是 B 中的文档是灰色的斜体,不知道这意味着什么?
编辑 1:这就是我生成/添加项目到集合 A 的方式(我可以看到两个写入操作都有效,它只是读取):
val userMap = HashMap<String, String>()
userMap["username"] = username
userMap["email"] = email
db.collection("users").document(auth.currentUser!!.uid).set(userMap)
和集合 B:
db.collection("store_exercises").document("whatever").collection("another_collection").document("name")
.set(myObject)
编辑 2:两个集合的内容图像: contents of both collections
否则,我该如何调试查询?或测试这个场景?
【问题讨论】:
-
请添加您用于“collectionB”的代码。
-
你去@AlexMamo,如果还有什么帮助请告诉我
-
向我们展示这些文档的字段。
-
参见 EDIT 2 中的附图,唯一的区别是 A 中的文档有字段和另一个集合,而 B 中的文档仅包含其他集合,而不包含字段(这些集合中的文档是但是,不是空的)@AlexMamo
-
比较图片的时候想出来了,谢谢@AlexMamo
标签: android database firebase google-cloud-firestore