Получить информацию из базы данных Firebase без autoID - PullRequest
0 голосов
/ 08 июля 2020

В настоящее время я получаю следующую информацию из моей базы данных Firebase:

 Database.database().reference().child("users/BA917746-F5BE-4FA4-B23E-C998F4118CCE").observe(.childAdded) { (snapshot) in
              
            let dict = snapshot.value as! [String: Any]
                            
            self.name = dict["name"] as! String

Это мое JSON дерево:

введите описание изображения здесь

Информация загружается там, где он пытается распаковать случайный идентификатор под частью «BA9 ...». Как мне собрать информацию непосредственно из-под части BA9 с другим autoID внутри нее? Спасибо.

1 Ответ

1 голос
/ 09 июля 2020

Я думаю, что путаница происходит из-за того, что вы наблюдаете .childAdded. Поскольку вы наблюдаете только один узел / объект, вы захотите вместо этого наблюдать .value:

Database.database().reference()
    .child("users/BA917746-F5BE-4FA4-B23E-C998F4118CCE")
    .observe(.value) { (snapshot) in
          
        let dict = snapshot.value as! [String: Any]
                        
        self.name = dict["name"] as! String

Если вы наблюдаете за всем узлом users, тогда вы должны использовать .childAdded или l oop над дочерними узлами снимка.

...