我是在 Firebase 中存盤資料的新手。我正在創建我的第一個應用程式,我想從一開始就正確地創建資料。
我想要做的是,當客戶選擇代金券(用于購買餐點)時,我還希望他們選擇他們要吃的餐點型別并存盤有關的統計資訊。膳食型別可以是素食、湯、沙拉、魚、肉。
所以我的第一個問題是,最好將每種型別的膳食型別存盤在檔案下,還是使用地圖或陣列。
稍后,當他們選擇膳食型別時,我有一個統計資料集合,我想在那里存盤他們一周和一個月吃了多少湯等飯菜的統計資料。
非常感謝任何提示等
uj5u.com熱心網友回復:
最好將每種型別的膳食型別存盤在檔案下,還是使用地圖或陣列。
如果一頓飯可以標記為單一型別,那么您可以像這樣存盤型別:
Firestore-root
|
--- meals (collection)
|
--- $mealId (document)
|
--- type: "soup"
如果可以使用多種型別標記一頓飯,那么您可以使用陣列:
Firestore-root
|
--- meals (collection)
|
--- $mealId (document)
|
--- type: ["soup", "salad"]
或者地圖:
Firestore-root
|
--- meals (collection)
|
--- $mealId (document)
|
--- type
|
--- soup: true
|
--- salad: true
使用地圖時,您可以輕松創建多個whereEqualTo()函式呼叫。因此,您必須選擇上述哪一種解決方案最適合您的應用程式用例。
稍后當他們選擇膳食型別時,我有一個統計集合,在那里我想存盤他們一周和一個月吃了多少湯等的統計資料。
為此,我建議您使用這樣的架構:
Firestore-root
|
--- statistics (collection)
|
--- $uid (document)
|
--- soup: 2
|
--- salad: 7
通過這種方式,您可以為每個用戶保留一個計數器,記錄您提供了多少餐點。如果您需要更復雜的模式,您可以將這些餐點作為檔案存盤在集合中,并將每餐添加為包含時間戳的檔案。通過這種方式,您將能夠查詢時間戳范圍。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/349394.html
