所以,今天是我学习Meteor.js的第二天 - 阅读文档,观看视频等...到目前为止我没有看到的是一个强大的模型概念,它将在大多数其他JS框架中使用.例如,如果我的Meteor应用程序要保留人员列表,我会声明一个人员集合,然后添加/更新/删除记录.这对我来说不同于创建一个Person对象,设置它的属性,将该对象添加到其他Person对象的集合等等...我的初始感知是否正确,并且Meteor并没有真正具有这种模拟业务实体的范例.其他框架的做法是什么?
对,那是正确的.这与MongoDB的无模式特性并行,而不是RDBMS,其中数据表具有明确定义的模式.以下是Meteor文档中的引用new Meteor.Collection():
调用此函数类似于在传统的ORM(对象 - 关系映射器)中心框架中声明模型.
但是,Meteor并不会阻止您在现有收集系统之上实现自己的更完善的模型系统.在atmosphere.meteor.com上有很多第三方软件包尝试这样做.transformMeteor集合上的选项为创建模型层提供了一个良好的起点,允许您在从数据库中检索文档时向文档添加行为和虚拟字段.
这是一个路线图条目,显示未来Meteor计划的模型,模式,验证器和迁移.这对于未来的SQL支持至关重要.然而,对于1.0,他们试图发布一个基于MongoDB构建的稳定,薄的核心.毫无疑问,千年发展目标正在关注Atmosphere上的当前模型实现,以便以后创建自己的核心实现.Geoff Schmidt在Get Meteor to 1.0视频中简要介绍了这一点.
TL; DR:Meteor提供了实现MongoDB模型所需的基本,必要的API.计划在未来使用更加明确的官方数据实体系统和SQL支持,但是现在您可以在Atmosphere上使用第三方解决方案或自行推出.