如何管理每个用户独有的长数组?

时间:2016-05-09 18:07:12

标签: node.js mongodb mongoose

我使用Mongoose作为我的ODM,我在实现我想要的东西时遇到了一些麻烦。

我有一个User集合,我的每个用户都应该有一个对所有人都相同的“列表”,例如:

{ egg: false,
water: false,
wine: false }

对于此列表的每个条目,用户可以设置true或false,无论他们是否有条目。

最终列表应该有大约1000个条目。 (该条目对于用户都是相同的,只有值(真/假)更改)

由于这是一个非常大的数字,我不知道如何管理这个。

我想到了一些解决方案,但它们中的每一个似乎都没有真正有效:

  • 在我的UserSchema中添加“list”数组,其中包含每个条目的名称以及用户可能设置的值。 (那会很大)

  • 创建一个ListSchema,在其中我将设置所有条目的名称,然后将其链接到每个用户,但我不知道这些值对于用户是唯一的...

    < / LI>

如果有人知道怎么做,我会非常感激!

1 个答案:

答案 0 :(得分:0)

您可以将所有可用的entries移动到单独的集合中,并使用One-to-Many与用户集合的关系。查看this页面,了解有关MongoDB中文档引用的更多信息。