在 Meteor 中建模多对多关系

Modelling many to many relationships in Meteor

您好,我正在构建一个小应用程序来适应 Meteor(和 Mongo)。困扰我的是数据建模方面。具体来说,模拟多对多关系的最佳方式是什么。我在 Mongo 文档中读到,如果您希望某个文档在原始文档保持相当静态的情况下增长,则不应将其嵌入到另一个文档中。 在我的测试应用程序中,学生可以注册课程。因此,从 Mongo 的角度来看,将学生作为嵌入式文档包含在课程中是有意义的,因为每门课程的学生人数有限,而不是相反,随着时间的推移,学生理论上可以加入无限课程。

然后是 Meteor 方面,我读到 Meteor 的很多功能都是针对单独的集合,例如 DDP 在文档级别工作,因此学生数组中的任何更改都会导致整个课程文档被重新发送对于每个浏览器,每个空格键助手之类的东西都可以与 Mongo 游标一起使用,但不能与数组等一起使用

有没有人处理过类似的情况,他们能解释一下他们采取了什么方法以及他们必须处理的任何缺点等吗?谢谢。

查看这篇文章:https://www.discovermeteor.com/blog/reactive-joins-in-meteor/ 并用这个 https://kadira.io/

测试你可能的解决方案有多好

更好地使用指南: http://guide.meteor.com/data-loading.html#publishing-relations

Meteor 团队驯服(或隐藏!)javascript 怪物到惊人的程度。通过使用他们的约定,您可以获得 "free" 大量常用功能 "out of the box"。通常会一遍又一遍地重新发明的东西、帐户、OAuth、跨客户端的实时数据、标准实时数据协议等。

但很快...您需要的功能不在盒子里。哇...看看所有的选择。等一下,这就是你在流星之前打的同一个怪物!

所以使用官方的流星指南。当您做出这些选择时,他们会推荐最明智的方法来扩展您的应用程序的功能。

因为他们知道自己有什么"hidden the monster",所以他们知道如何在你伸展时不断躲避怪物。