什么是Mongoose?
- 之前我们都是通过shell来完成对数据库的各种操作的,在 开发中大部分时候我们都需要通过程序来完成对数据库的 操作。
- 而Mongoose就是一个让我们可以通过Node来操作 MongoDB的模块。
- Mongoose是一个对象文档模型(ODM)库,它对 Node原生的MongoDB模块进行了进一步的优化封装, 并提供了更多的功能。
- 在大多数情况下,它被用来把结构化的模式应用到一个 MongoDB集合,并提供了验证和类型转换等好处。
为什么用它?
- 可以为文档创建一个模式结构(即约束Schema)
- 可以对模型中的对象/文档进行验证
- 数据可以通过类型转换转换为对象模型
- 可以使用中间件来应用业务逻辑挂钩
- 比Node原生的MongoDB驱动更容易
怎么用?
- mongoose中为我们提供了几个新的对象
– Schema(模式对象)
• Schema对象定义约束了数据库中的文档结构
– Model
• Model对象作为集合中的所有文档的表示,相当于 MongoDB数据库中的集合collection
– Document
• Document表示集合中的具体文档,相当于集合中 的一个具体的文档
PS:要注意三个对象的创建是有顺序的,必须依照Schema,Model,Document的顺序