课程名称:Vue3+ElementPlus+Koa2 全栈开发后台系统
课程章节: 第3章 Koa架构设计
主讲老师:河畔一角
课程内容:
今天学习的内容包括:Mongo的安装和在 koa.js 中的简单操作数据库。
课程收获:
Windows 系统中安装 Mongo 数据库:
在官网下载安装包进行安装:https://www.mongodb.com/try/download/community
安装过程比较简单,直接点下一步到完成即可。
配置 Mongodb:
在安装路径下创建 data\db 和 data\log 两个文件夹。
创建 mongod.cfg 配置文件:
systemLog:
destination: file
path: D:\MongoDB\data\log\mongod.log
storage:
dbPath: D:\MongoDB\data\db
启动 MongoDB 服务:
D:\MongoDB\bin\mongod --dbpath D:\MongoDB\data\db
Koa.js 中连接 Mongo 数据库:
想在代码中操作数据库,需要安装对应的驱动程序:
npm install mongoose
数据库的配置信息,放到 config/index.js 文件中:
module.exports = {
URL:'mongodb://127.0.0.1:27017/imooc-manager'
}
连接到数据库,放到 models/db.js 文件中:
const mongoose = require('mongoose')
const config = require('../config')
const log4js = require('../utils/log4js')
mongoose.connect(config.URL,{
useNewUrlParser: true,
useUnifiedTopology: true
})
const db = mongoose.connection;
db.on('error',()=>{
log4js.error('***数据库连接失败***')
})
db.on('open',()=>{
log4js.info('***数据库连接成功***')
})
将 db.js 导入到 app.js 使用,在启动时就可以连接到数据库了:
require('./models/db')
Koa.js 中操作数据库:
新建User数据集合的模型,models/userSchema.js:
const mongoose = require('mongoose')
const userSchema = mongoose.Schema({
"userId" : Number,//用户ID,自增长
"userName" : String,//用户名称
"userPwd" : String,//用户密码,md5加密
"userEmail" : String,//用户邮箱
"mobile":String,//手机号
"sex":Number,//性别 0:男 1:女
"deptId":[],//部门
"job":String,//岗位
"state" : {
type:Number,
default:1
},// 1: 在职 2: 离职 3: 试用期
"role": {
type:Number,
default:1
}, // 用户角色 0:系统管理员 1: 普通用户
"roleList" : [], //系统角色
"createTime" : {
type:Date,
default:Date.now()
},//创建时间
"lastLoginTime" : {
type:Date,
default:Date.now()
},//更新时间
remark:String
})
module.exports = mongoose.model("users",userSchema,"users")
创建一个路由,routes/user.js
const router = require('koa-router')()
const User = require('../models/userSchema')
const util = require('../utils')
router.prefix('/users')
// 模拟创建用户
router.post('/add', async (ctx) => {
const res = await User.create({
userName: "admin",
userPwd: "123456"
})
console.log(res)
ctx.body = util.success(res)
})
module.exports = router
启动项目:
npm run dev
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦