【发布时间】:2015-08-30 16:40:09
【问题描述】:
我正在评估服务器端框架,很高兴听到您对 Meteor 的以下问题的看法:
我有一个由 MongoDB、NodeJS 和 Angular 构建的工作系统。
我根据我的系统需求和常识在 Mongo 中设计了我的数据模型。例如,该系统基于包含多个组件的项目的概念,因此我有一个 proejcts 集合,文档内部看起来像
{
_id: ObjectId('123'),
name: "Project A",
components: [
{
compType: "type-A"
},
{
compType: "type-B"
}
]
}
现在我正在为服务器端框架评估 Meteor,在玩了一段时间之后,阅读文档并查看示例,我发现即使在简单的 Todos 示例中,也没有将数据建模为包含 todos 的列表在其中它被建模为两个独立的集合。
我知道这样做是为了允许 DDP 仅同步该特定客户端实际需要的数据,但我觉得为了帮助而将我的 projects 集合并拆分它是错误的DDP,主要是因为这意味着我正在根据前端需求而不是服务器需求对数据库进行建模。
我对这种感觉有什么误解吗?
如果我用一个集合 lists 对 Todos 应用程序建模,并在新项目添加到列表时获取更新,而不是关于特定项目的更新,会发生什么?
【问题讨论】: