我有一個包含數組的大型JSON文件。我爲我的應用的後端使用Firebase,並且我想使用FirebaseArray來存儲數據。如何將我的JSON數組作爲FirebaseArray導入到Firebase中?
從我的Angular應用程序創建FirebaseArray並向其中添加數據很簡單,但我的應用程序的性質是我已經獲取了需要首先導入到Firebase中的數據。
在Firebase網站上,導入的唯一選項來自JSON。當我導入我的JSON文件時,結果是一個帶有數字鍵的對象,我意識到它就像一個數組,但有一個主要問題。
{
"posts": {
"0": {
"id": "iyo0iw",
"title": "pro patria mori"
},
"1": {
"id": "k120iw",
"title": "an english title"
},
"2": {
"id": "p6124w",
"title": "enim pablo espa"
}
}
}
用戶可以更改項目的位置,項目的位置也是如何唯一標識項目。對於多個用戶,這意味着可能會出現以下問題。
- 莎拉更改發佈[0]標題爲 「大家好」
- 特雷弗:交換信息[1]後[2]
- 莎拉位置:更改後[1]標題爲「這是在索引1右後?「
如果以下行爲發生在很短的時間內,Firebase並不確定Sarah在更改標題時看到的帖子[1],並且無法確定哪些帖子對象更新。
我想要的是一種導入我的JSON文件並使數組變成FirebaseArrays的方法,而不是帶有數字鍵的對象,它與數組類似,並且共享上述問題。
是的,我知道這是一個陣列技術,但我的問題專門詢問FirebaseArray的,這是具有獨一無二的特殊對象身份證的關鍵。因爲多人可能會改變一天(並且可以改變項目的位置),所以對於我的應用來說,數組是一個壞主意。在此處閱讀更多信息:https://firebase.googleblog.com/2014/04/best-practices-arrays-in-firebase.html –
我已更新問題以使其更清晰。 –
這聽起來像你只需要在每個職位中的另一個領域,它決定了相對於'職位'下的其他孩子的順序。您可以使用orderByChild查詢該訂單。在這種情況下,孩子的索引/鍵並不重要,因爲其他值決定了顯示順序。 –