我有一個數據結構,像這樣指數:火力地堡 - 上.value的不給排序結果
{
"inbox_events": {
"from_users": {
"uid1": {
"uid2": 1501337181,
"uid3": 1501337183,
"uid4": 1501337179
},
"uid2" : {
"uid6": 1501337284,
"uid1": 1501337295
}
}
}
}
以下規則:
{
"rules": {
".read": "auth != null",
".write": "auth != null",
"inbox_events": {
"from_users": {
"$userId": {
".indexOn": ".value"
}
}
}
}
}
問題:我不明白爲什麼價值索引不起作用。在Firebase控制檯中,每個$userId
的條目仍按字母順序排列,如果我執行queryOrderedByValue
,則無法獲得排序結果。
我誤解了Firebase文檔嗎?
在此先感謝!
編輯:
具體來說,我想對數據進行查詢,像這樣:
let queryRef = Database.database().reference().child("inbox_events").child("from_users").child("uid1").queryOrderedByValue()
queryRef.observe(.value, with: { (snapshot) in
print("key: \(snapshot.key), value: \(snapshot.value)")
})
,以便在獲得排序列表,按降序價值,uid
小號uid1
節點。
後一些代碼。此外,指定你使用的平臺(Android,iOS,網絡,管理SDK,REST API,等等) –
@DimaRostopira:添加了什麼我打算做的,平臺的iOS爲理所當然由弗蘭克·範·P. – Herakleis
編輯這是一個有點不清楚你在做什麼;你想按值查詢,但是uid是鍵。此外,Firebase不提供訂購的降序選項,但有辦法做到這一點。最後的.index並不直接影響項目的排序方式 - 它是查詢性能增強。你能否澄清預期的產出會是什麼? – Jay