【发布时间】:2021-03-05 10:07:36
【问题描述】:
我想调用 Firestore 中的几个表并收集所有信息,进行解析并将其发送回查看。
所以我有类似的东西:(示例)
val cities = mutableListOf<City>()
val users = mutableListOf<User>()
val tasks = mutableListOf<Task<QuerySnapshot>>()
val q1 = database
.collection("cities")
.whereEqualTo("place.city", cityName)
.get()
val q2 = database
.collection("users")
.whereEqualTo("city", cityName)
.get()
tasks.add(q1)
tasks.add(q2)
Tasks.whenAllComplete(tasks)
.addOnCompleteListener { allTask->
allTask.forEach{ task->
// transform into the list of its corresponding model
}
}
问题来了,我不知道如何知道将快照解析为相应模型的任务的“起源”。
如何根据结果任务确定我必须使用哪个模型?
【问题讨论】:
-
“如何知道任务的“起源””是什么意思?您到底在寻找什么?
-
如果我一个人打电话,我知道我会得到一个快照,它是 Cities 列表,另一个是 Users 列表。但是如果我调用一个Task,(同时获取所有信息),我不知道如何区分哪个快照是知道如何将信息转换为相应的模型。
标签: android firebase kotlin google-cloud-firestore task