zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Koa2、mongoose常用代码模板

模板代码 常用 mongoose Koa2
2023-09-11 14:19:19 时间

Koa2、mongoose常用代码模板

一、生成后端项目

npm init -y

二、下载Koa2、mongoose

# 注意这里是koa不是koa2
npm install koa mongoose -S
  • -S指的是添加到运行依赖中,相当于–save
  • -D指的是添加到开发依赖中,相当于–save -dev

三、在根目录新建app.js文件

  • 代码如下
const Koa = require('koa')
const app = new Koa()
app.listen(4000,() => console.log("服务器启动"))

四、链接数据库

  • 在根目录新建数据库文件db
  • 在db下建立models.js文件
  • 代码如下
const mongoose = require('mongoose')
mongoose.connect('mongodb://localhost:27017/xxxx',{ useNewUrlParser: true,useUnifiedTopology: true})//xxxx为数据库的名称
const connection= mongoose.connection
connection.on('connected', () => {
  console.log('db connect success!')
})

const yyySchema = mongoose.Schema({
  username: {type: String, required: true},
})
//新建集合
const yyyModel = mongoose.model('yyy', yyySchema) 
exports.UserModel = UserModel

大致按照的步骤如下

  • 连接数据库
    1. 引入mongoose
    2. 连接指定数据库(URL只有数据库是变化的)
    3. 获取连接对象
    4. 绑定连接完成的监听(用来提示连接成功)
  • 定义出对应特定集合的Model并向外暴露
    1. 字义Schema(描述文档结构)
    2. 定义Model(与集合对应, 可以操作集合)
    3. 向外暴露Model(SM)

五、Koa2路由与数据库相结合

koa-router
  • 在根目录下新建routes文件夹
  • 在新建index.js文件
  • Koa2使用路由需要中间件koa-router
	npm install koa-router -S
  • 打开index.js,写如下代码
	const Router = require('koa-router')
	const router = new Router()
	//或者直接写 
	const router = require('koa-router')()
	
	//然后可以写类似的如下代码
	router.get('/', async (ctx, next) => {
  		await ctx.render('index', {
    		title: 'Hello Koa 2!'
	  })
	})
	//暴露
	module.exports = router
  • 打开app.js,写如下代码
const router = require('./routes/index')
//下面的代码最好写在下部,声明使用
app.use(router .routes(), router .allowedMethods())//用来鉴别GET/POST方法
数据库
  • 打开routes/index.js引入数据库
//利用了es6的解构
const {yyyModel} = require('../db/models')
  • 客户端通过url对数据库进行操作,此时路由的代码应该如下
//1.注册一个路径
router.post('/register', async (ctx, next) => {
//2.取出参数
  const {参数} = ctx.request.body
  //3.数据库查询
  const result = yyyModel.findOne({参数})
    //4.进行操作,返回响应数据
    ctx.body = result 
})

六、其他说明


  • mongoose的官网请点击 这里
  • Koa2的官网请点击 这里
  • 这里相当于搭建了一个后台的项目,实际上官方已经为我们搭建好了脚手架koa-generator
//全局安装
npm install koa-generator -g
//新建项目
koa2 项目名称
  • 需要注意的是命令的开始是koa2,如果达成koa也是可以的,只不过新建的不是koa2的项目
  • 运行npm install,之后运行npm run dev,访问localhost:3000出现以下画面表示后台项目运行成功

在这里插入图片描述

修改端口号
  1. 打开bin/www
  2. 修改以下代码
var port = normalizePort(process.env.PORT || '3000');