firebase - 如何通过索引删除特定数组
问题描述
我从 firebase 数据库中删除数组时遇到问题。这是我的数据库的样子
Location
0 "Maldives"
1 "Maldives"
2 "India"
有时数据库包含相同的位置。当用户尝试删除一个位置时,它会删除所有匹配的位置。
这是我使用的代码:
onPressed: () {
Firestore.instance
.collection('schedules')
.document(data.documentID)
.updateData({
"location":
FieldValue.arrayRemove(
["Maldives"]),
});
},
child: Text(
'Remove',
style: TextStyle(
color: Color(0xFF34495e)),
)),
如果我使用该代码,数据库将是什么样子:
Location
0 "India"
我怎样才能解决这个问题。如果我们可以通过数组的索引删除它会容易得多。我怎样才能删除?
解决方案
这正是文档中有关该FieldValue.arrayRemove
方法的说明。
如果用例是保留“马尔代夫”值之一,则应考虑以不同方式存储它们(可能在子集合中)或在客户端进行处理。
推荐阅读
- c# - 如何在 ML.Net 中预测字符串
- python - 在 Python 中不推荐使用模块时从何处安装新模块
- javascript - 如何将嵌套的 javascript 对象转换为 CSS 样式的内联字符串?
- regex - 两个单词不区分大小写的正则表达式
- maven - 将占位符传递给从 docker-maven-plugin (io.fabric8) 构建的 docker 映像
- python - 用字符串替换列中的某些值
- twitter-bootstrap - 如何在数据背景内部使用 Webp 中的图像(来自引导程序)
- c# - 如何在 C# WPF 中保存自定义类?
- for-loop - 带后缀的批处理脚本复制文件
- python - 如何在 Python 中使用 Openpyxl 对多行的 excel 行进行平均?