【问题标题】:How to delete all the document in collection ? (flutter / firebase collection) [duplicate]如何删除集合中的所有文档? (颤振/火力收集)[重复]
【发布时间】:2021-05-07 14:56:35
【问题描述】:

我有一个功能是将excel文件上传到firebase cloud 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"));
      }
    }
}

【问题讨论】:

标签: firebase flutter google-cloud-firestore


【解决方案1】:

Firestore 不支持删除整个集合。您必须获取所有文档并单独删除它们。

您可以尝试以下方法:

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

【讨论】:

  • 未定义类“QueryDocumentSnapshot”。尝试将名称更改为现有类的名称,或创建一个名为“QueryDocumentSnapshot”的类。
  • 您的 pubspec.yaml 中有哪些 Firebase 软件包?
猜你喜欢
  • 2021-03-19
  • 2022-01-09
  • 2021-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-08
相关资源
最近更新 更多