1

正如我所見,Cloud Firestore和它的集合爲我們提供了組織數據的更多功能。我認爲,對於我和其他人來說,存在一個基本問題。Google Firestore數據組織

什麼是更好的方法來存儲主細節關係?

像這樣:具有「MAKE」屬性的文檔的「CARS」集合。

我認爲我需要一個「CARS」集合和一個獨立的「MAKES」集合。

有什麼想法?

回答

3

除非您有特定的需求,否則只需將每個CARS文檔的MAKE作爲字段進行查詢即可。

如果您想要將MAKE作爲枚舉字段進行控制,您可以創建一個名爲ValidMakes的集合,其中包含具有所有允許的Mids的ID的文檔。在安全規則中,在允許寫入之前,檢查是否存在與MAKE字段值相同的文檔。

+0

但是,MAKE必須來自預先定義的值列表(如果我有一個RDMS,則爲表)或「集合」(?)。假設的應用程序將具有管理員級別,此級別的操作員可填寫「MAKE」集合。其他操作員將添加CARS,但只能選擇由管理員創建的MAKE ... – GCoe

+1

管理員是否創建了一個名爲ValidMakes的集合,其中包含具有所有允許的Mids的ID的文檔。在安全規則中,在允許寫入之前,檢查是否存在與MAKE字段值相同的文檔。 –

+0

非常有趣。到目前爲止,我只是在規則中考慮訪問控制,但它們可以用於「參照完整性」之類的內容。但是,在這種情況下,我只能向運營商(在SELECT中)公開MAKES集合中的內容,在這種情況下,我不需要規則...(請將我的糟糕英語appologize) – GCoe