一、Mongoose是node.js异步环境下对mongodb进行便捷操作的对象模型工具。Mongoose是NodeJS驱动,不能作为其他语言的驱动。
Mongoose的特点
1.通过关系型数据库的思想来设计非关系型数据库
2.基于mongodb驱动,简化操作
是node.js操作mongodb的一个模块
二、mongoose的安装以及使用
1.安装
npm install mongoose -S
2.连接数据库
mongoose.connect( 'mongodb://127.0.0.1:27017/eggcms', {useNewUrlParser: true});
3.定义schema
数据库中的Schema,为数据库对象的集合。schema是mongoose里会用到的一种数据模式。可以理解为表结构的定义:每个schema会映射到mongodb中的一个collection,它不具备操作数据库的能力
操作user表(集合),定义一个schema
var UserSchema =new mongoose.Schema({name:String,age:Number},{versionKey: false // You should be aware of the outcome after set to false})
4.创建数据模型,操作数据库
定义好了schema,接下来就是生成了Model。model是schema生成的模型,可以对数据库操作。
/* 4.定义数据库模型操作数据库//UserSchema就和数据库中的user表形成映射关系var User = mongoose.model('User',UserSchema,"user")
5.查询数据库
User.find({},(err,doc)=>{console.log(doc)})
//find()不仅可以用回调读取,同时还是promiseUser.find({}).then(data=>{console.log(data)})
三、定义一个数组类的Schema
var UserSchema = new mongoose.Schema({name: String,collects:[{_id:String,name:String,rating:String,like:Boolean}]}, {versionKey: false // You should be aware of the outcome after set to false});
