Когда я запускаю программу, изменяю значение и отправляю его в Firebase, я получаю ошибку: Завершение приложения из-за необработанного исключения «InvalidFirebaseData», причина: «(updateChildValues: withCompletionBlock :) Не удается сохранить объект типа UITextField в.Может хранить только объекты типа NSNumber, NSString, NSDictionary и NSArray. '
func updateUsersProfile() {
//check to see if the user is logged in
if let userID = Auth.auth().currentUser?.uid {
//create an access point the Firebase storage
let storageItem = storageRef.child("profile_images").child(userID)
//get the image uploaded from photo library
guard let image = profileImageView.image else { return }
if let newImage = image.pngData() {
//upload to Firebase storage
storageItem.putData(newImage, metadata: nil, completion: {
(metadata, error) in
if error != nil {
print(error!)
return
}
storageItem.downloadURL(completion: { (url, error) in
if error != nil {
print(error!)
return
}
if let profilePhotoURL = url?.absoluteString {
guard let newUserName = self.usernameText.text else { return }
guard let newDisplayName = self.displayNameText.text else { return }
guard let newBioText = self.bioText.text else { return }
guard let newDescription = self.descriptionText else { return }
let newValuesForProfile =
["photo": profilePhotoURL,
"username": newUserName,
"displayname": newDisplayName,
"mydescription": newDescription,
"bio": newBioText]
//Update the Firebase database for that user
self.databaseRef.child("profile").child(userID).updateChildValues(newValuesForProfile, withCompletionBlock: { (error, ref) in
if error != nil {
print(error!)
return
}
print("Profile successfully updated")
})
}
})
})
}
}