使用官方的mongodb包: https://github.com/mongodb/node-mongodb-native
使用第三方包mongoose: https://mongoosejs.com/
管理工具mongoDB-Compass:https://www.mongodb.com/try/download/compass
1.安装mongoose
npm install --save mongoose
2.连接数据库
db/index.js引入创建mongoose
const mongoose = require('mongoose);
// 连接数据库 如果没有该数据库,当插入数据的时候会自动创建
module.exports = ()=> {
mongoose.connect('mongodb://localhost:27017/myTest',{useUnifiedTopology:true,useNewUrlParser: true})
.then(()=> {
console.log('数据库连接成功')
}).catch(err => {
console.log('数据库连接失败',err)
})
};
app.js中引入db
const MongoConnect = require('./db')
// 连接数据库
MongoConnect()
3.设计用户模块的schema
models/index.js 创建用户模块
const mongoose = require('mongoose);
// 目的:增加约束,以保证数据地完整性,避免脏数据
const userSchema = new mongoose.Schema({
username: {
type: String,
required: true // 该字段不为空
},
pwd: {
type: String,
required: true // 该字段不为空
}
age: {
type: Number
}
})
const User = mongoose.model('users', userSchema)
module.exports = {
User
}
routers/user.js 引用用户模块
const router = require('koa-router')()
const {User}= require('../models')
router.prefix('/users')
// 添加用户
router.post('/add', async (ctx) => {
const {username, pwd} = ctx.request.query
await User.create({username, pwd}).then(rel => {
if (rel) {
ctx.body = {
code: 200,
msg: '添加成功',
data: rel
}
} else {
ctx.body = {
code: 300,
msg: '添加失败',
}
}
}).catch(err => {
ctx.body = {
code: 400,
msg: '添加时出现异常',
}
})
})
网友评论