Я пытаюсь отправить экземпляр структуры в мою базу данных firestore, чтобы обновить его. Я использую структуру, которую я создал, и я следую инструкции пожарного магазина - https://firebase.google.com/docs/firestore/manage-data/add-data
, это мой код:
import FirebaseFirestore
import FirebaseFirestoreSwift
public struct Pin: Codable {
let name: String
let lat: Double
let long: Double
enum CodingKeys: String, CodingKey {
case name
case lat
case long
}
}
, а затем приведу его следующим образом
let db = Firestore.firestore()
let data = Pin["lat" : 32.323, "long": 23.4343 , "name":"Group"]
do {
try db.collection("Anno").document("Pin").setData(from: data)
} catch let error {
print("Error writing Annotation to Firestore: \(error)")
}
по какой-то причине я получаю эту ошибку - «Невозможно преобразовать значение типа Pin (имя структуры) в ожидаемый тип аргумента [String: Any]»
теперь я могу привести данные как ! [String: Any], но я хочу, чтобы тип значений [например, double] был сохранен. Также, как вы можете видеть, этот код почти 1: 1, как показано в примере Firebase Document. его все еще не работает.
Также я не понимаю, почему Pin - это тип Pin (это просто имя структуры). Спасибо за помощь