Swift 如何将自定义对象保存到Firestore?

Swift 如何将自定义对象保存到Firestore?,swift,firebase,google-cloud-firestore,Swift,Firebase,Google Cloud Firestore,大家好,我有一个简短的问题。我正在尝试将自定义模型保存到Firestore,如下所示: import Firebase let city = City(name: "Los Angeles", state: "CA", country: "USA", isCapital: false, population: 5000000)

大家好,我有一个简短的问题。我正在尝试将自定义模型保存到Firestore,如下所示:

import Firebase

    let city = City(name: "Los Angeles",
                    state: "CA",
                    country: "USA",
                    isCapital: false,
                    population: 5000000)
    do {
        try db.collection("cities").document("LA").setData(from: city)
    } catch let error {
        print("Error writing city to Firestore: \(error)")
    }
问题是。setData(来自:city)不工作?它说的是无关的参数标签“from:”,当我这样做时,我会得到一个错误。Firestore是否反对此操作,或者我是否必须导入其他内容


谢谢

文档在这方面并没有完全错误,只是有一部分不完整。Firebase添加了一个扩展来简化定制对象的制作,但在文档中没有提到该扩展。(我假设它是一个扩展)

上的文档是需要扩展的代码示例

通过将其添加到您的pod文件进行简单修复

  pod 'FirebaseFirestoreSwift'
然后在终端或cocoapods中进行pod更新

然后在您的类中,只需更新导入以包含该内容

import Cocoa
import FirebaseCore
import FirebaseFirestore
import FirebaseFirestoreSwift
作为参考,文档中的代码如下

try db.collection("cities").document("LA").setData(from: city)
还有这个

let docRef = db.collection("cities").document("LA")

 docRef.getDocument { (document, error) in
    let result = Result {
    try document.flatMap {
       try $0.data(as: City.self)
    }
 }
这条线呢

.data(as: City.self)

是需要FirebaseFirestoreSwift的“麻烦制造者”

.setData(from: