【发布时间】:2022-07-20 12:12:20
【问题描述】:
这不是重复的,因为我没有找到任何关于在 FLUTTER 中使用批处理编写超过 500 个文档的问题或解决方案。我已经在其他框架或语言中看到了这个问题的答案,但我不明白如何在颤振中实现它。我需要使用批量写入更新我的集合中的文档,但批量写入只能包含 500 个操作。那么如何将 500 多个文档写入 Firestore?我已经将迭代视为解决方案之一,但如何在颤振中实现它?
这就是我执行单批写入的方式:
Future<void> batchUpdate() {
WriteBatch batch = FirebaseFirestore.instance.batch();
return users
.get()
.then((snapshot) {
for (DocumentSnapshot document in snapshot.docs) {
document.reference.update(
{
'totalScore': 0,
},
);
}
return batch.commit();
})
.then((value) => ScaffoldMessenger.of(context).showSnackBar(snackBar))
.catchError(
(error) => ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(error),
),
),
);
}
【问题讨论】:
标签: firebase flutter google-cloud-firestore