updateChildValues ​​кажутся не только обновлениями значения - PullRequest
0 голосов
/ 16 мая 2018

Я начинающий фреймворк Firebase, поэтому в учебнике, который я пытался выполнить, автор создает новое значение, просто вызывая только функцию updateChildValues.

 @objc func handleRegister () {
    guard let email = emailTextField.text, let password = passwordTextField.text else {
        print("Form is not valid")
        return
    }
    Auth.auth().createUser(withEmail: email, password: password) { (user, error) in
        if error != nil {
            print(error)
            return
        }

        //successfully authenticated user
        let ref = Database.database().reference(fromURL: "https://my-awesome-project-18f30.firebaseio.com")
        ref.updateChildValues([ "someValue" : 123123])

    }

Так что, похоже, функция updateChildValues ​​не только обновляет старое значение,но (кроме того) создает новое значение, если оно еще не существовало.Я пытался найти любое упоминание в Интернете, но только информацию о обновлении обновлял старое значение и никакой информации о создании нового, если старого еще не было.Мои мысли о работе функции updateChildValues ​​верны?

1 Ответ

0 голосов
/ 16 мая 2018

Да, updateChildValues ​​похож на PUT в методе HTTP.Если значение для ключа существует, оно обновляется.Иначе, если значение не существует, оно создается.

Как Фрэнк ван Пуффелен , говорит:

Firebase автоматически создает ключи для каждого значения и автоматически удаляетключи без значения.Зная это, вы действительно можете видеть, что updateChildValue также может использоваться для создания значений и удаления ключей, обновляя их с нулевым значением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...