如果其他用户在手机上保存了我的电话号码,我想获取他的个人资料数据。现在,我正在查询contacts子集合内的手机字段。当我进行查询时,我会获得以下文件的快照:子集合的文档。但是,我想获取该用户的完整个人资料数据,因此,我需要获取父快照。如何实现此目标,否则必须更改firestore的结构?预先感谢
[
db.collectionGroup("contacts")
.whereEqualTo("mobile",preference.getMobile()?.number)..get().addOnSuccessListener { snapShots ->
val list = ArrayList<UserProfile>()
for (s in snapShots) {
//here i'm getting the contact data
val contact = s.toObject(ModelMobile::class.java)
//My need is getting userProfile Data
/* val contact = s.toObject(UserProfile::class.java)
list.add(contact)")*/
}
}
答案 0 :(得分:2)
在对联系人子集合进行查询之后,您将需要对父文档进行另一个查询。在单个查询中无法同时获得它们。
for (s in snapShots) {
var parentDocRef = s.reference.parent.parent
// Now you have to get() the parentDocRef to get its contents
}