Firebase & Swift - чтение данных возвращает ноль - PullRequest
0 голосов
/ 03 мая 2019

В настоящее время я пытаюсь прочитать данные из базы данных в реальном времени.Функция ниже вызывается после того, как пользователь успешно вошел в систему.

База данных имеет следующую структуру:

driven
     - users
          - uid
              - monthlyStartKm
              - currentKm
              ...

У меня есть следующий код для чтения данных:

guard let uid = Auth.auth().currentUser?.uid else { return }
        let databaseRef = Database.database().reference()

        databaseRef.child("users").child(uid).observeSingleEvent(of: .value, with: { (snapshot) in

            let value = snapshot.value as? NSDictionary
            let monthlyStartKmData = value?["monthlyStartKm"] as? String ?? ""
            let currentKmData = value?["currentKm"] as? String ?? ""
            ....

Почему-то ежемесячноStartKmData и currentKmData возвращают nil. Что это я забыл?
Редактировать:
print(value) печатает следующее:

Optional({
    monthlyStartKm = 15000;
    currentKm = 15250;
    ...
})


Второе редактирование:
Сохраняется так, как startKm, так и currentKm имеют тип Int:

let userObject = [
            "monthlyStartKm": startKm,
            "currentKm": currentKm,
            ...
        ] as [String: Any]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...