Извлечение списка данных из Firebase [Swift]

#swift #firebase #firebase-realtime-database #swift5

# #swift #firebase #firebase-база данных в реальном времени #swift5

Вопрос:

Я пытаюсь получить массив строк со списком всех имен пользователей, но по какой-то причине мой код не работает. Вывод должен быть [sean, yuh]

 Database.database().reference().child("usernames").observeSingleEvent(of: .value, with: { (snapshot : DataSnapshot) in
        
  for child in snapshot.children {
     let snap = child as! DataSnapshot
            
     let uid = snap.childSnapshot(forPath: "username")
            
        self.array.append(uid1)
   }
}
 

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

Комментарии:

1. Совершенно не по теме, и я вижу, что есть принятый ответ, но рассмотрите возможность использования uid пользователей firebase в качестве их uid вместо того, чтобы использовать что-то пользовательское. В дальнейшем это становится намного проще.

Ответ №1:

Ваш uid1 не объявлен в коде, которым вы поделились, и определенно не является значением свойства username в JSON. Кроме того, вы захотите получить value дочерний снимок. Таким образом, объединяет:

 Database.database().reference().child("usernames").observeSingleEvent(of: .value, with: { (snapshot : DataSnapshot) in
  for child in snapshot.children {
    let snap = child as! DataSnapshot
            
    let uid = snap.childSnapshot(forPath: "username")      
      self.array.append(uid.value)
    }
  }