MongoDB基本应用

2021-10-09  本文已影响0人  新世界的冒险

使用官方的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: '添加时出现异常',
     }
  })
})
上一篇下一篇

猜你喜欢

热点阅读