Я работаю с Firebase.При ссылке на документ и попытке изменить / добавить данные он каждый раз падает.Это дает мне поток 1: фатальная ошибка: неожиданно найден ноль при неявном развертывании необязательного значения.
Я попытался очистить проект и восстановить его.Я напечатал электронную почту пользователя (которая дает мне действительный адрес электронной почты каждый раз).Chosenbackground также определяется.Я не знаю, почему происходит сбой, потому что я не использую необязательный параметр nil.
Это то, что я импортирую:
import Foundation
import Firebase
import FirebaseAuth
import FirebaseFirestore
import FirebaseDatabase
import GoogleSignIn
Здесь я определяю db: var db : Firestore!
Здесь установлен selectedBackground и вызывается функция:
@objc func lightBlueAndOrangeImageTapped(tapGestureRecognizer: UITapGestureRecognizer){
print("lightBlueAndOrangeTapped")
// Your action
selectedBackgroundLabel.text = "Light Blue and Orange Background is selected"
chosenBackground = "lightBlueAndOrange"
chosenBackgroundToFirebase()
}
Это функция:
func chosenBackgroundToFirebase(){ //IN THIS FUNCTION IT CRASHES
if let userEmail = Auth.auth().currentUser?.email {
print("\(userEmail)")
print("\(chosenBackground)")
let newDocRef = db.collection("customizeDatabase").document("\(userEmail)") //ERROR ON THIS LINE
newDocRef.updateData([
"background": "\(chosenBackground)"
]) { err in
if let err = err {
print("Error updating document: \(err)")
newDocRef.setData([
"background" : "\(self.chosenBackground)"
])
} else {
print("Document successfully updated")
}
}
}
}
Я хочу иметь возможность читать и писать документ.Большое спасибо за помощь :) Я все еще довольно новый разработчик, поэтому вся помощь была высоко оценена :) (хотя это довольно глупая ошибка).