Vue3+nodejs全栈项目(资金管理系统)——后端篇(二)用户模块
创始人
2024-02-17 21:23:09
0

文章目录

  • 用户模块的增删改查
    • 新增
      • 创建user_info表
      • 初始化路由模块
      • 路由模块处理函数(添加)
        • 测试
    • 查询
      • 路由模块处理函数(查询)
      • 测试
    • 编辑(根据id)
      • 路由模块处理函数(编辑/更新)
      • 测试
    • 删除(根据id)
      • 路由模块处理函数
      • 测试

用户模块的增删改查

新增

创建user_info表

在这里插入图片描述

初始化路由模块

  1. 创建/router/userinfo.js路由模块,并初始化如下的代码结构:
// 导入express
const express = require('express')
// 创建路由对象
const router = express.Router()// 这里直接要用路由处理函数模块 不懂的可以看前一篇博客
const userHandler = require('../router_handler/userinfo_handler')// 新增
router.post('/add', userHandler.userAdd)// 向外共享对象
module.exports = router
  1. app.js 中导入并使用用户的路由模块:
// 导入并使用用户信息路由模块
const userinfoRouter = require('./router/userinfo')
app.use('/api/user', userinfoRouter)

路由模块处理函数(添加)

/router_handler/userinfo_handler.js头部导入数据库操作模块, 完成userAdd

exports.userAdd = (req, res) => {const fields = {}if (req.body.name) fields.name = req.body.nameif (req.body.addr) fields.addr = req.body.addrif (req.body.age) fields.age = req.body.ageif (req.body.birth) fields.birth = req.body.birthif (req.body.sex) fields.sex = req.body.sexconst sql = `insert into user_info set ?`db.query(sql, fields, (err, results) => {if (err) return res.status(400).json(err)if (results.affectedRows !== 1) return res.status(400).json('添加失败')res.json(fields)})
}

测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查询

userinfo.js

// 查询全部数据
router.get('/allUsers', userHandler.userAll)

路由模块处理函数(查询)

userinfo_handler.js

exports.userAll = (req, res) => {const sql = `select * from user_info order by id desc`db.query(sql, (err, results) => {if (err) return res.status(400).json(err)if (results.length === 0) return res.status(200).json('查无数据')res.json(results)})
}

测试

在这里插入图片描述

编辑(根据id)

userinfo.js

// 编辑
router.post('/edit/:id', userHandler.userEdit)

路由模块处理函数(编辑/更新)

exports.userEdit = (req, res) => {const fields = {}if (req.body.name) fields.name = req.body.nameif (req.body.addr) fields.addr = req.body.addrif (req.body.age) fields.age = req.body.ageif (req.body.birth) fields.birth = req.body.birthif (req.body.sex) fields.sex = req.body.sexconst sql = `update user_info set ? where id = ?`db.query(sql, [fields, req.params.id], (err, results) => {console.log(req.params.id)if (err) return res.status(400).json(err)if (results.affectedRows !== 1) return res.status(400).json('编辑失败')res.json(fields)})
}

测试

在这里插入图片描述

删除(根据id)

userinfo.js

router.post('/delete/:id', userHandler.userDelete)

路由模块处理函数

exports.userDelete = (req, res) => {const sql = 'delete from user_info where id = ?'db.query(sql, req.params.id, (err, results) => {if (err) return res.status(400).json(err)if (results.affectedRows !== 1) return res.status(400).json('删除失败')res.json('删除成功')})
}

测试

在这里插入图片描述

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...