假設我的學生和老師處於多對多的關係。如果我只想找出給定學生的所有教師,反之亦然,我通常使用嵌入式對象ID對其進行建模。例如,如果教師擁有屬性studentIds,該屬性是學生對象ID的數組,那麼這是足夠的信息來完成所有您需要的查詢。在MongoDB中應該如何模擬以下多對多關係?
但是,假設學生可以給老師一個評分。該評分應該如何與模型吻合?此刻,我做到以下幾點:
- 裏面的老師,而不是存儲學生的陣列,我存儲的 陣列JSON對象{studentId:物件,等級:字符串}
- 當進行查詢,我JSON對象的數組轉換成studentIds數組 並提取全部信息像往常一樣
- 所以現在我有學生對象的數組和JSON對象與 數組的收視率
- 然而,由於在$ MongoDB中的運算符不保留排序,我需要做我的ow n的爲了我能結合學生的排序
- 在最後一步,一切以收視率 對象來得到我想要
它的工作原理,但似乎有點令人費解的是有這樣做的更好的辦法?
似乎對我來說很合理.... –