Koa2、mongoose常用代码模板

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');
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值