【问题标题】:delete a document in firebase when you know the field value当您知道字段值时,删除 firebase 中的文档
【发布时间】:2019-05-28 11:37:31
【问题描述】:
上下文:在前端,用户可以输入删除日期的可用性。这就是我添加日期的方式:
Firestore.instance.collection('availableDates').add({
'availableDates':date});
但我还需要从Firestore 中的collection 中删除document。我不知道document id,但我知道value 这个字段是独一无二的。如果我知道文档中的字段值,我将如何删除文档。这是firestore的屏幕截图:
【问题讨论】:
标签:
firebase
flutter
google-cloud-firestore
【解决方案1】:
您可以先获取文档,然后再删除文档。例如:
var collection = FirebaseFirestore.instance.collection('countries');
var snapshot = await collection.where('city', isEqualTo: 'CA').get();
await snapshot.docs.first.reference.delete();
【解决方案2】:
如果有人在更新为什么这段代码不起作用后感到困惑,请参考这个。 2021 年 3 月 21 日更新。
refUser.where("city", isEqualTo: "CA").get().then((snapshot){
snapshot.docs.first.reference.delete();
});
我自己花了一些时间来解决这个问题,但如果它可以帮助像我这样卡住的一个人,那么这一切都是值得的。 :)