设计MongoDB模型?

时间:2012-02-22 14:55:16

标签: node.js mongodb model

我有一个关于在mongo db中设计数据模型的概念性问题。 我有一些“列表”的记录。每个列表都是带有id,descr,createdBy等的“一行”记录。但现在我要求每个“列表”可以与其他用户共享。设计/重新设计模型的最佳方法是什么,以便当用户登录以查看他创建的“列表”和与他共享的“列表”时?我正在考虑创建新的字段“sharedWith”,其中共享“list”的所有用户名将用逗号(或其他东西)分隔。然后在请求在此字段中搜索时。但不知怎的,这种方法在我看来并不是很有用。你能给我一些建议或指导吗? 我正在使用带有mongoose的nodejs。

谢谢!

1 个答案:

答案 0 :(得分:1)

User: {
  ...
  myLists: Array<ListObject>
  sharedLists: Array<ListObject>
};

ListObject: {
  ...
  owner: User,
  sharedWith: Array<User>
};

这对我来说似乎是一个明智的设计。