为什么要使用Mongoose
- mongodb的格式过于灵活,可以插入任何数据,不受限制。实际开发中要有数据格式规范,特别是多人协作时。
- 那不就和Mysql一样了吗?这仅仅是使用层面的调整,并不是Mongodb的初衷。
- 以格式松散数据为主,少量规范数据可以这么用
- 以大量格式规范数据,最好直接选择Mysql
概念
Schema
Modal
以modal操作collection
使用
- Mongoose连接客户端 ```javascript const mongoose = require(‘mongoose’)
const url = ‘mongodb://localhost:27017’ const dbName = ‘myblog’
mongoose.set(‘useFindAndModify’, false)
mongoose.connect(${url}/${dbName}
, {
useNewUrlParser: true,
useUnifiedTopology: true
})
const db = mongoose.connection
// 发生错误 db.on(‘error’, err => { console.error(err) })
// // 连接成功 // db.once(‘open’, () => { // console.log(‘mongoose connect success…’) // })
module.exports = mongoose
- 定义model模型
```javascript
// 对应 blog 集合
const mongoose = require('../db')
const BlogSchema = mongoose.Schema({
title: {
type: String,
required: true // 必需
},
content: String,
author: {
type: String,
required: true
}
}, { timestamps: true })
const Blog = mongoose.model('blog', BlogSchema)
module.exports = Blog