我现在在Firebase中遇到问题。我尝试删除/删除特定数组数据的地方。最好的方法是什么?附言我只是Firebase / flutter的新手。
我的数据库结构:
我要在我的数据库结构中删除的数据(突出显示的一个):
答案 0 :(得分:1)
更新: 尽管概念相同,但 API 已发生很大变化。
var collection = FirebaseFirestore.instance.collection('collection');
collection
.doc('document_id')
.update(
{
'your_field': FieldValue.arrayRemove(elementsToDelete),
}
);
答案 1 :(得分:0)
Firestore不提供直接删除索引项的直接方法。在这种情况下,您需要做的是读取文档,修改客户端内存中的数组,然后将字段的新内容更新回文档。如果要使更新原子化,可以在事务中完成此操作。
答案 2 :(得分:0)
首先创建一个空白列表,然后在列表中添加要删除的元素,然后使用以下方法更新
注意:对于这种方法,您需要要删除的元素的文档ID
var val=[]; //blank list for add elements which you want to delete
val.add('$addDeletedElements');
Firestore.instance.collection("INTERESTED").document('documentID').updateData({
"Interested Request":FieldValue.arrayRemove(val) })