ฉันมีผู้ใช้เช่นนี้อยู่ในฐานข้อมูลของฉัน:
users
--45jklj4kljfejlk34 // random uid
----id: 1 // I add this manually when creating a user (maybe it helps getting a random user)
----someData: true
--454jkljkljefnd4lk
----id: 2
----someData: true
ฉันต้องการรับผู้ใช้แบบสุ่ม แต่ฉันไม่รู้ว่าต้องทำอย่างไร ฉันพยายามแล้ว แบบนี้:
let usersCount = DataService.sharedInstance.DB_USER_COUNT
let rand = Double(arc4random_uniform(UInt32(usersCount))) + 1
let userRef = DataService.sharedInstance.DB_REF_USERS.queryOrdered(byChild: "id").queryStarting(atValue: rand).queryLimited(toFirst: 1))
ฉันได้รับ usersCount จากฐานข้อมูล ที่นั่น ฉันจะเพิ่มตัวเลขทุกครั้งที่เพิ่มผู้ใช้
แต่นี่ไม่ได้ผล นี่คือสิ่งที่ฉันได้รับหากฉันพิมพ์สิ่งนี้:
(/users {
i = id;
l = 1;
sp = 1;
vf = l;
})
ข้อเสนอแนะใด ๆ ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร
DataService.sharedInstance.DB_REF_USERS.queryStarting(atValue: rand).queryLimited(toFirst: 1))
- person EI Captain v2.0   schedule 16.08.2016(/users { l = 1; sp = 1; vf = l; })
- person Quantm   schedule 16.08.2016Optional(<null>)
- person Quantm   schedule 16.08.2016DataService.sharedInstance.DB_REF_USERS.queryOrdered(byChild: "id").observeSingleEvent(of: .value, with: {(snapshot) in print(snapshot) })
- person EI Captain v2.0   schedule 16.08.2016