【发布时间】:2020-07-26 04:10:44
【问题描述】:
在 Flutter 应用中,仅当最后更新的字段大于本地最后更新的字段时,我才需要从 Firestore 中提取用户文档。
目前我是这样做的:
QuerySnapshot usersData = await Firestore.instance
.collection("users")
.where("lastUpdated", isGreaterThan: lastUpdatedLocally)
.where("userId", isEqualTo: userId)
.getDocuments();
Map<String, dynamic> userData =
usersData.documents.isEmpty ? {} : usersData.documents.first.data;
我有三个问题:
- 是否可以在
get查询单个文档中执行类似操作,知道文档 ID 是用户 ID 来查询整个集合似乎不正确。 - 如果没有,我们是否可以通过文档 ID 进行查询,例如:
.where(<documentId>, isEqualTo: userId),而不是在文档中添加一个名为“userId”的文件。 - 最后,执行我在此处所做的操作是否比查询单个文档更慢(如果可能的话)。
【问题讨论】:
标签: firebase flutter google-cloud-firestore