2016-02-15 84 views
0

我有3個集合通過多對多關係相互關聯。因此,我有兩個問題:流星CRUD多對多關係MongoDB

  1. 我應該在3個集合中每個都有2個數組,或者有3個ID的一個連接集合?
  2. 如何執行讀取,插入,更新和刪除操作,以確保所有內容的同步性和完整性?

預先感謝任何幫助

回答

0

對於大多數情況下,我可能不得不在每個對象的引用標識,如:

{ 
    "_id": "123", 
    "firstReferenceCollectionId": "abc", 
    "secondReferenceCollectionId": "def" 
} 

如果你的應用程序要具有巨大的規模,我可能會根據實際使用的數據進一步對數據進行非規範化。

要回答你的第二個問題,你真的不需要擔心上述方法,因爲當這些對象的其他屬性改變時,引用的內部id不會改變。如果您使用額外的非規範化路線,請使用meteor add matb33:collection-hooks來同步upserts上的數據。以下是文檔鏈接:https://github.com/matb33/meteor-collection-hooks