В настоящее время я борюсь с доступом к другим данным, хранящимся в пути, более конкретными данными из подпапки. Моя установка выглядит следующим образом:Firebase/Swift: childSnapshotForPath access autID data?
userID{
username:Andreas,
gender:Male,
age:18,
footballTeams{
Team1{
name:My team 1
matchesPlayed:3
}
}
}
Так что я в настоящее время работает этот код, чтобы захватить как имя пользователя, пол и возраст:
ref.child("Users").observeEventType(.ChildAdded, withBlock: { (snapshot1:FIRDataSnapshot) in
//code goes here..
var username = String(snapshot1.value!["username"] as! String)
var gender = String(snapshot1.value!["gender"] as! String)
var age = Int(snapshot1.value!["age"] as! Int)
})
Однако я хочу, чтобы захватить все названия команд, хранящихся в footballTeams путь, заказанный как «Team1, Team2, Team3» и т. д. Поэтому я наткнулся на «snapshot1.childSnapshotForPath("footballTeams/Team1").value!["name"]
». Однако это сработало бы, если бы я знал точное имя каждого имени команды, но это сохраняется как автоматический идентификатор. Любые идеи о том, как я к этому подхожу?
Заранее спасибо.
Это также похоже на другое решение, которое я пытался, но и с моим кодом и ваш код, я получил эту ошибку: «Initializer для условной привязки должны иметь факультативный тип, а не" FIRDataSnapshot». – askaale
srry. все еще изучая некоторые быстрые здесь и там. Дайте мне знать, работает ли мое редактирование. если он не просто избавится от этой проверки и перейдет с 'для дочернего элемента в snapshot1.childSnapshotForPath (" footballTeams "). children.allObjects as [FDataSnapshot] { print (child.value) }' – adolfosrs
Спасибо! Оно работает! – askaale