2017-07-26 67 views
0

我正在使用Firebase製作水質監測網絡應用程序。每個用戶將有不同的水質數據。所以我很困惑如何以一種將用戶與數據鏈接的方式來構建數據庫。我應該使用Firebase身份驗證嗎?或者我應該爲用戶創建一個數據庫節點?如果我使用Firebase身份驗證如何構建數據庫以鏈接該特定用戶唯一的數據。在stackoverflow中有類似的問題,但答案並不顯示任何數據庫結構,答案是充滿了android代碼。所以我可以理解。構建Firebase數據庫

+1

數據建模是一個廣泛的話題。我推薦閱讀[NoSQL數據建模](https://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/)並觀看[Firebase for SQL開發人員](https://www.youtube的.com /播放列表?列表= PLL-K7zZEsYLlP-K-RKFa7RyNPa9_wCH2s)。然後做一些實驗,並在/遇到具體問題時報告。 –

+0

我還建議您閱讀關於如何使用Firebase數據庫的[Firebase文檔。](https://firebase.google.com/docs/database/android/start)。 – UmarZaii

回答

0

Firebase身份驗證是用戶向Firebase標識自己的方式,與Firebase中的數據結構和存儲方式沒有直接關係。

即,您可以設置Firebase以允許任何未經身份驗證的人讀取/寫入數據,或者您可以添加身份驗證以創建存儲數據的安全環境。

你問了一個結構,但是問題中沒有太多的數據繼續下去,所以這裏假設有兩個認證用戶可能的解決方案。

users 
    uid_0 
    name: "Bill" 
    uid_1 
    name: "Jessup" 

water_samples 
    -Uijjsj99as9dad 
     sampled_by: uid_0 
     sample_result "Poor" 
     datestamp: "070724" 
    -Yi8j9ko90k9dsd 
     sampled_by: uid_1 
     sample_result "Good" 
     datestamp: "070725" 

注:按鍵Uijjsj99as9dad和Yi8j9ko90k9dsd用childByAutoId(SWIFT)或推()

在這個例子中創建,比爾採樣7月24日一些水,效果不佳。 Jessup在25日再次採樣,結果很好。