swift - 在 Cloud Firestore 中将数组另存为地图
问题描述
我有一个对象数组,我正在按照以下代码创建并保存到 Firestore:
var user1 = [String : Any]()
var user2 = [String : Any]()
var user3 = [String : Any]()
user1.updateValue("UID1", forKey: "UserID")
user1.updateValue("John", forKey: "fName")
user1.updateValue("Smith", forKey: "lName")
user2.updateValue("UID2", forKey: "UserID")
user2.updateValue("John", forKey: "fName")
user2.updateValue("Doe", forKey: "lName")
user3.updateValue("UID3", forKey: "UserID")
user3.updateValue("Jane", forKey: "fName")
user3.updateValue("Doe", forKey: "lName")
var userDetailsArray = [[String:Any]]()
userDetailsArray.append(user1)
userDetailsArray.append(user2)
userDetailsArray.append(user3)
startCompBatch.setData(["userDetails" : userDetailsArray], forDocument: doRef, merge: true)
我敢肯定这很简单,但我找不到任何指向正确方向的东西。
解决方案
将其更改为
var userDetailsDict = [String:Any]()
userDetailsDict["user1"] = user1
userDetailsDict["user2"] = user2
userDetailsDict["user3"] = user3
startCompBatch.setData(["userDetails" : userDetailsDict], forDocument: doRef, merge: true)
推荐阅读
- c++ - 使用作为参数传递的字符串的 cpp 字符串插值输出奇怪的结果
- thinkscript - 所有 thinkscript Stock Fundamentals API 返回 NaN?
- javascript - 从图像背景到彩色背景的平滑过渡
- python - 从 API Gateway 获取查询字符串参数
- php - 使用PHP,我如何将一个大整数四舍五入到最接近的百万
- sonarqube - Sonarqube-8.6.1.40680 无法连接到 AWS Aurora Postgresql Serverless
- css - 如何仅在一个实例中更改 SVG 图标的颜色
- python - 如何在 pytorch 模型中保留不用于训练的特征
- python - 如何处理看起来像 Pandas DataFrame 的表的字符串流
- python - 在列表的元素之间搜索等价