在 Node.js 中使用 MongoDB 作为数据库,通常需要使用到 Mongoose(Mongoose -> ORM for MongoDB)作为 ORM。
Mongoose 是 Node.js 的驱动,不能作为其它语言的驱动。
Mongoose 有两个特点:
Mongoose 中,有三个比较重要的概念,分别是 Schema、Model 和 Entity。
它们的关系是:Schema 生成 Model,Model 创造 Document,Model 和 Document 都可对数据库操作造成影响,但 Model 比 Document 更具操作性。
如果使用程序操作数据库,就要使用 MongoDB 驱动。MongoDB 驱动实际上就是应用程序提供的一个接口,不同的语言对应不同的驱动,NodeJS 驱动不能应用在其他后端语言中。
定义文档结构和属性类型。
还能定义:
通过 mongoose.Schema 来调用 Schema,然后使用 new
调用来创建 Schema 对象。
const mongoose = require('mongoose');const Schema = mongoose.Schema;const mySchema = new Schema({title: String,author: String,body: String,comments: [{ body: String, data: Date }],date: { type: Date, default: Date.now },hidden: Boolean,meta: {votes: Number,favs: Number,},});
⚠️ 注意:创建 Schema 对象时,声明字段类型有两种方法,一种时首字母大写的字段类型,另一种是引号包含的消协字段类型。
const mySchema = new Schema({ title: String, author: String });// orconst mySchema = new Schema({ title: 'string', author: 'string' });
https://www.cnblogs.com/chris-oil/p/9142795.html
https://github.com/tuzhu008/gitbook-Node_cn/blob/master/Library/mongoose/docs/API.md