Swift 如何将自定义对象保存到Firestore?
大家好,我有一个简短的问题。我正在尝试将自定义模型保存到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)
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: