閱讀:Arrays are evil
一般來說,最好的避免它們因爲通常有更好的方式來組織數據。
這裏的一些信息:
這將創建一個節點稱爲child_node,如果你再次運行該代碼將它
root
child_node: some_value
一個SOME_VALUE
let ref = FIRDatabase.database().reference()
let childRef = ref.child("child_node")
childRef.setValue("some_value")
結果的價值,它會覆蓋現有節點。
一般來說,最好從數據撇清節點的名稱它們含有這樣擴大一點
let ref = FIRDatabase.database().reference()
let childRef = ref.childByAutoId()
childRef.setValue("some_value")
結果
root
-Y8hjj9a99js9jd: some_value
-Yi00ksomosooss: some_value //the second time it's run
然後去遠一點
let ref = FIRDatabase.database().reference()
let childRef = ref.childByAutoId()
let someData = ["site": "Olympus Mons", "location": "Mars"]
childRef.setValue(someData)
結果
root
-Y88ujs9mskkms:
site: "Olympus Mons"
location: "Mars"
然後你問自己自己,這與數組有什麼關係?
這是存儲「額外」數據的更好方法。因此,例如,你可以自己節點
root
users
-Yi8joiomso (uid)
g: xxxx
l:
0: xxx
1: xxx
內存儲用戶位置或保持到他們在另一個節點,在參考
root
users
-Yi8joiomso (uid)
location: -Yiuhj89ejee
location
-Yiuhj89ejee
g: xxxx
l:
0: xxx
1: xxx
或保持用戶的位置節點
root
location
userID
g: xxxx
l:
0: xxxx
1: xxxx
內
非數組結構爲查詢,檢索數據和組織數據提供了更大的靈活性。
來源
2017-02-10 23:38:40
Jay
此視頻可能會對您有所幫助:https://www.youtube.com/watch?v=XIQsQ2injLo –
您實際上並未撰寫任何數據。並且'同一個數據庫'是指相同的NODE還是實際上整個Firebase數據庫? – Jay