1
我是Firebase的新手,我正嘗試構建一個應用程序,其中顯示用戶啓動應用程序時的隨機用戶配置文件(類似Tinder)。Firebase iOS Swift:如何挑選隨機userProfile?
經過幾個小時的測試,我找到了一個解決方案,但是如果感覺不對!我打電話給另一位觀察員的觀察員,這是否好?兩個連接?我不知道,但感覺很糟糕!但我找不到另一種解決方案。
我的代碼好壞嗎?如果不正確可以給我一些很好的建議如何做到這一點?
我的火力數據庫結構:
"profiles": {
"1": {
"name": "John Doe",
"age": "36",
"location": "Los Angeles",
"gender": "male",
},
"2": { ... },
"3": { ... }
},
我斯威夫特IOS火力地堡代碼
var profilesRef: DatabaseReference!
let profilesRef = Database.database().reference().child("profiles")
profilesRef.observe(.value, with: { (snapshot) in
let profilesCount = snapshot.childrenCount
let diceRoll : String = String(arc4random_uniform(UInt32(postsCount)))
profilesRef.child(diceRoll).observeSingleEvent(of: .value, with: { (snapshot) in
if let profileDict = snapshot.value {
let profile = Profile(profileData: profileDict as! Dictionary<String, AnyObject>)
print(profile.age)
}
})
})
它的工作原理,但感覺不對。
感謝您的回覆,Nshweky 我不明白如果我不讓我的第二個連接,我如何得到我的單個配置文件? 你能幫助我的代碼pls ????? –
當您第一次調用數據庫時,快照返回了所有配置文件。如果您登錄snapshot.value,您應該獲得「1」:「姓名」:「John Doe」, 「age」:「36」, 「location」:「Los Angeles」, 「gender」:「男性「, }, 」2「:{...}, 」3「:{...} etc ... – Nshweky
嘗試記錄snapshot.value(來自第一個數據庫調用),如果您不理解。 – Nshweky