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