// 导入系统的路径拼接模块
const path = require('path');
//处理参数格式转换
const querystring = require('querystring')
//导入处理时间模块
var datetime = require('silly-datetime');
//静态资源访问模块 serve-static
var serveStatic = require('serve-static')
// 设置静态资源目录
const serve = serveStatic(path.join(__dirname, 'public'))
//解析地址模块
const url = require('url');
//导入路由模块 router
const getRouter = require('router')
const router = getRouter()
//引入数据库相关操作
const User = require('./sql.js')
//导入模板引擎
const template = require('art-template')
router.get('/list', async(req, res) => { //呈现列表页面
let students = await User.find(); //查詢数据库所有信息
const html = template('list', {
students: students
})
res.end(html)
})
router.get('/add', (req, res) => { //添加页面
const html = template('add', {})
res.end(html)
})
router.get('/modify', async(req, res) => { //修改页面
let { pathname, query } = url.parse(req.url, true) //获取请求地址
let students = await User.find(); //查詢数据库所有信息
const html = template('modify', {
user: await User.findOne({ _id: query.id }),
hobbies: ['足球', '橄榄球', '篮球', '游泳', '西瓜', '唱歌'],
collage: ['前端与应用开发', 'AI算法工程技术', 'PHP高级工程']
})
res.end(html)
})
router.get('/remove', async(req, res) => { //删除数据
let { pathname, query } = url.parse(req.url, true) //获取请求地址
console.log(query.id)
// let user = await User.findOne({ _id: query.id }).then(result => console.log(result)).catch(err => { console.log('查询失败' + err) })
// console.log(user)
//通过ID查询数据库中的数据
// let user = await User.findOne({ _id: query.id });
// console.log(user)
// 删除数据
await User.findOneAndDelete({ _id: query.id }).then(result => console.log(result + '删除成功!'))
// //客户端给出响应 //使用重定向301
res.writeHead(301, {
Location: '/list' //地址
})
res.end()
// 删除功能结束
})
router.post('/add', (req, res) => { //处理上传数据,上传到数据库
//接受用户提交信息
let formData = ''
req.on('data', param => {
formData += param;
console.log('正在传输数据...')
})
req.on('end', async() => { //接受完毕之后触发
console.log('传输数据完成...')
// querystring.parse(formData) //处理传递参数方法
let user = querystring.parse(formData);
//将用户提交的信息添加的数据库中
await User.create(user);
//客户端给出响应 //使用重定向301
res.writeHead(301, {
Location: '/list' //地址
})
res.end()
})
///add结束
})
//处理修改请求
router.post('/modify', (req, res) => { //处理上传数据,上传到数据库
let { pathname, query } = url.parse(req.url, true) //获取处理后的请求地址
//接受用户提交信息
let formData = ''
req.on('data', param => {
formData += param;
console.log('正在传输数据...')
})
req.on('end', async() => { //接受完毕之后触发
console.log('传输数据完成...')
// querystring.parse(formData) //处理传递参数方法
let user = querystring.parse(formData);
// //通过ID查询数据库中的数据
// let user = await User.findOne({ _id: query.id });
// console.log(user)
// 更新单个
await User.updateOne({ _id: query.id }, user).then(() => console.log('修改成功!')).catch(err => { console.log('修改失败!' + err) })
//客户端给出响应 //使用重定向301
res.writeHead(301, {
Location: '/list' //地址
})
res.end()
})
///add结束
})
//公共内容开放出去
module.exports = router;
版权属于:
再度Miren
评论 (0)