如何删除集合中的所有文档?(扑动/火基收集)



我有一个功能是将excel文件上传到firebase云firestore集合中。在插入数据之前,我应该首先清除cloud firestore集合中的所有文档。有没有什么函数或方法可以一次清除所有的集合或文档?

void _importData() async {
for (var table in data.tables.keys) {
for (var row in data.tables[table].rows) {
print("$row");
await databaseReference.collection("vehicles").add({
//row[i] = the column sequence in the excel
'Car_Make': row[3],
'Company': row[4],
'Holder_Type': row[2],
'Holder_Name': row[1],
'Vehicle_No': row[0],
}).then((value) => print("Upload Complete"));
}
}
}

Firestore不支持删除整个Collection。你必须得到所有的文件,然后逐个删除。

您可以尝试以下操作:

FirebaseFirestore.instance.collection('vehicles').snapshots().forEach((querySnapshot) {
for (QueryDocumentSnapshot docSnapshot in querySnapshot.docs) {
docSnapshot.reference.delete();
}
});

最新更新