0

mongoid 文档告诉我,should be used with caution 我理解他的 nn 关系,但不知道如何使用纯 mongoid 更好地解决我的问题:

一个课程有很多参与者,一个参与者可以参加很多课程。那么,将参与者存储在课程模型中,并在需要参与者的所有课程时对所有课程进行搜索,不是更快吗?

4

2 回答 2

1

您的模型应该反映您的用例。

做到这一点的一种方法是为课程设置一个模型,为参与者设置一个模型,以及将学生映射到课程的第 3 个模型(具有课程和学生的唯一索引以防止重复)。这样,就有一个模型引用其他 2 个模型。根据您的访问模式,这可能是理想的,也可能不是理想的。

于 2012-11-13T18:51:49.630 回答
0

我认为这可能是嵌入文档的一个很好的用例。有关 embeds_many 和 embedded_in,请参见首页上的示例语法:http: //mongoid.org/en/mongoid/

这里的主要缺点是,如果您有不止一门课程的参与者,那么您将在每门课程中都有重复的参与者。

确保您在计划用于查找参与者的字段上放置索引。

于 2012-11-13T18:23:01.473 回答