【发布时间】:2020-02-29 12:52:06
【问题描述】:
我想使用以下代码从根据文档更新日期排序的 firestore 获取数据:
fun getQuery(groupID: String): Query {
val path = FirestorePath()
return path.getTaskCollectionRef()
.orderBy(ActionTask.FieldNames.taskUpdatedOn.name, Query.Direction.DESCENDING)
.whereEqualTo(ActionTask.FieldNames.taskGroupID.name, groupID)
.whereEqualTo(ActionTask.FieldNames.taskOpen.name, true)
}
问题是.orderBy() 导致我的应用显示已删除文档中的数据(以前存在,现在已删除)。
当我删除 .orderBy() 时,我在我的应用中看到了正确的数据。
【问题讨论】:
-
所以你在查询的时候是从缓存中获取数据的?
-
我没有从缓存中获取数据。至少不是故意的。 API 是否从缓存中获取它?我不知道。
-
我问是因为 Firestore 是高度一致的,所以您不应该得到已删除的数据。但是,如果启用了oflline mode,您可能会从缓存中获取它
-
离线模式是默认开启的吧?
-
对于 Android 和 iOS,是的
标签: android kotlin android-recyclerview google-cloud-firestore