todoList demo
1. 环境准备
- 创建目录express-study
- 初始化package.json
npm init -y
- 安装运行依赖 (依赖库)
npm install express mysql2 sequelize sequelize-cli -S
- 安装开发依赖 (热更新)
npm i nodemon -D
2. todolist需求说明(api说明)
- 根据不同参数(状态,页码),查询任务列表
- 实现新增任务(名称,截止日期,内容)
- 实现编辑任务: 根据客户端传递参数任务对象(已存在任务),进行编辑(名称,截止日期,内容,ID)
- 实现删除任务:(ID)
- 修改任务状态:(ID, 状态)
3. 开发实现(api开发)
- 使用navicat在选定主机的mysql上创建数据库express-demo
- 使用初始化项目的数据库配置信息
npx sequelize init
- 生成模型文件
- migrate文件(供迁移使用)
- model文件 (供程序使用)
npx sequelize model:generate --name Todo --attributes name:string,deadline:date,content:string
- 持久化 模型对应的数据库表
npx sequelize db:migrate
- 创建models
npx sequelize-cli model:generate --name User --attributes firstName:string,lastName:string,email:string
- 修改squelize配置文件config.json,迁移models生成数据库表(通过squelize-cli)
npx sequelize-cli db:migrate --env=development
- 编写业务逻辑
7. 运维和发布
api里面具体使用ORM模型
pm2 项目的运维和发布
- 安装pm2
npm i pm2 -g
- 初始化pm2
pm2 init
- 发布
pm2 start .\ecosystem.config.js
- 备注:启动命令/运维命令/运维文档,重要命令:
pm2 list
pm2 log
pm2 restart 0 //服务id/name