如何在 Firestore 中创建和更新数字数组?

Posted

技术标签:

【中文标题】如何在 Firestore 中创建和更新数字数组?【英文标题】:How can i create and update an array of number in firestore? 【发布时间】:2022-01-12 12:36:09 【问题描述】:

我想在 Firestore 中以编程方式创建一个数组。另外,我想更新数组,如附图所示。

我想将所有参考编号存储在此数组中。每当有新的参考号时,我都想更新数组。请帮忙。

这是我尝试过的。我知道这是错的。它不是更新数组而是替换它。

Map<String, Object> mapone= new HashMap<>();
Map<String, Object> maptwo = new HashMap<>();

mapone.put("Refnum", f_refrenceNum);
maptwo.put("RefNumber", mapone);
upiRefnum.set(maptwo,SetOptions.merge());

【问题讨论】:

到目前为止你有什么尝试? @AlexMamo 我更新了关于我尝试过的问题的问题。在我的方法中,它没有更新,而是替换了以前的值 【参考方案1】:

您的代码使用您指定的值告诉 Firestore 到 RefNumber.Refnum 字段。

如果要将f_refrenceNum 添加到数组中,可以使用array-union 操作:

mapone.put("Refnum", FieldValue.arrayUnion(f_refrenceNum));

如果f_refrenceNum 不在数组中,这将添加它。如果它已经在数组中并且您想添加一个副本,则必须将文档读入您的应用程序代码中,在您的应用程序代码中添加数字,然后将整个数组写回数据库。

请参阅 adding items to an array 上的 Firestore 文档。

【讨论】:

以上是关于如何在 Firestore 中创建和更新数字数组?的主要内容,如果未能解决你的问题,请参考以下文章

如何在jquery中创建和访问数组

如何在 Ember Data 1.13.7 中创建和保存新模型并更新 UI

使用 jQuery 在同一模式中创建和更新表单

了解在“便签本”中创建和更新的 CoreData 实体

如何在firestore中创建一个数组?

Oracle Sql Developer如何在Oracle中创建和设置角色?