【问题标题】:MongoDB Data Model Design for Meteor.js AppMeteor.js 应用程序的 MongoDB 数据模型设计
【发布时间】:2014-10-23 01:20:42
【问题描述】:

我不是一个后端人员,在 MongoDB 方面更糟糕,但是,我已经被 Meteor.js 所吸引,所以我在玩的时候尝试一下。

我正在创建一个项目管理/票务应用程序,希望您对数据模型设计提出意见。在我的应用程序中,您创建一个工单,将其他团队成员分配给工单,并允许人们访问它并操作数据,如待办事项列表、附件、cmets 等。非常基本。

根据我的研究,带有引用的标准化数据模型似乎是有意义的。在那种情况下,是一个很好的模型:

  1. 我所有用户的集合。
  2. 工单集合(每个工单/项目都有自己的文档),其中包含团队成员的字段,我使用引用将它们插入到数组中。然后我会有 cmets、todos 等字段。

或者这是最好的:

  1. 我所有用户的集合。
  2. 每张工单都有一个独特的集合,其中团队成员的字段保存在一个数组中。

对不起,如果这看起来相当基本。我正在上 MongoDB 大学的 Node 课程,所以我希望我不必依赖太多基本问题太久。

谢谢大家!

【问题讨论】:

    标签: mongodb meteor data-modeling database


    【解决方案1】:

    您应该将每个工单/项目存储在其自己的文档中的单个集合中(第一个选项)。

    如果您为每张工单提供自己的集合,您就没有有效的方法来索引和查询工单。

    【讨论】:

    • 谢谢托马斯!那么,您会将数组中的所有 cmets 添加到一个字段中吗?
    • 是的,cmets 将是一个包含对象数组的字段。每个对象将包含用户名、日期、消息和其他适用字段。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-03
    • 2013-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-04
    相关资源
    最近更新 更多