如何使用swift在firestore文档中的字段中生成空值?

Posted

技术标签:

【中文标题】如何使用swift在firestore文档中的字段中生成空值?【英文标题】:how to make null value in a field in firestore document using swift? 【发布时间】:2020-05-20 09:31:16 【问题描述】:

我想让 firestore 文档中的一个字段为空,如上图中的 lastEventApproval 字段。

我尝试使用以下代码创建文档

let data = ["lastEventApproval" : nil , other data here .....]
batch.setData(userDictionary, forDocument: ref)

所以我想当我成功创建一个文档时,有一个名为lastEventApproval的字段,如上图,值为null

但结果是……

如果我使用该代码,lastEventApproval 将不存在。像这样

android 中,我可以使用此代码制作类似的东西

val data = hashMapOf("lastEventApproval" to null)
batch.set(ref,data)

但我不知道为什么它在 ios swift 中不起作用,也许我需要分配除 nil 以外的其他值?

那么如何在 swift 中使 firestore 文档中的字段为空?

【问题讨论】:

【参考方案1】:

如果你真的想写一个 null 来用作占位符(例如),那就是这个

func writeNull() 
    let collRef = self.db.collection("test_collection")
    let data: [String: Any] = [
        "key": "value",
        "key1": NSNull()
    ]
    collRef.addDocument(data: data)

结果

这也有效

func writeNull() 
    let collRef = self.db.collection("test_collection")
    let data: [String: Any?] = [
        "key": "value",
        "key1": nil
    ]
    collRef.addDocument(data: data)

【讨论】:

以上是关于如何使用swift在firestore文档中的字段中生成空值?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Swift (Firestore) 访问特定文档字段

如何在 Swift 中从 Cloud FireStore Firebase 访问特定字段

Swift - 从随机创建的文档 ID 中获取字段(Firestore)

如何读取 Firestore (Swift) 中字段的值

在 Swift 和 ios 14 中访问 Firebase Firestore 文档的字段?

使用 OR 查询获取 Firestore 文档