# 在/application/controllers/article.js中新增代码块 ``` async del(req, res) { //get获取的itemid var itemid = parseInt(req.query.itemid); if (!itemid) { res.render('msg', { code: 0, msg: '数据不存在', url: '' }); return; } //执行删除 let r = await model.delete("delete from article where itemid=?", [itemid]); //调用父类的msg方法 return this.msg(r, '', '/article/index'); } ``` # /application/controllers/article.js完整代码 ``` var tools = require('../../libs/tools'); var config = require(tools.rootPath + 'config'); var { connection, pool, model } = require(tools.rootPath + 'libs/model'); var base = require(tools.controllerPath + 'common/base.js'); module.exports = class extends base { constructor() { super(); } async index(req, res) { //页码 var page = req.query.page || 1; page = parseInt(page); //分页 var pagesize = 2; var offset = (page - 1) * pagesize; //总页数 var total_page = Math.ceil(await model.value("select count(*) from article") / pagesize); //数据 var lst = await model.select(`SELECT * from article order by itemid desc limit ${offset},${pagesize}`); //加载模板并进行变量赋值 res.render(req.TPL, { data: lst, url: config.url, total_page: total_page, page: page }); } async add(req, res) { if (req.isPost) { //提交后 var post = req.body; var title = post.title.trim(); //标题判断 if (!title) { res.render('msg', { code: 0, msg: '标题不能为空', url: '' }); return; } //内容判断 var content = post.content.trim(); if (!content) { res.render('msg', { code: 0, msg: '内容不能为空', url: '' }); return; } //执行插入并返回id let insertId = await model.i("INSERT INTO article SET ?", post); if (insertId) { res.render('msg', { code: 1, msg: '操作成功', url: '/article/index' }); } else { res.render('msg', { code: 0, msg: '操作失败', url: '' }); } return; } //加载模板文件 res.render(req.TPL, {}); } async mod(req, res) { if (req.isPost) { //提交后 var post = req.body; var itemid = parseInt(req.query.itemid); if (!itemid) { res.render('msg', { code: 0, msg: '数据不存在', url: '' }); return; } //标题判断 var title = post.title.trim(); if (!title) { res.render('msg', { code: 0, msg: '标题不能为空', url: '' }); return; } //内容判断 var content = post.content.trim(); if (!content) { res.render('msg', { code: 0, msg: '内容不能为空', url: '' }); return; } //执行更新操作 let r = await model.u("update article SET ? where itemid=?", post, [itemid]); if (r) { res.render('msg', { code: 1, msg: '操作成功', url: '/article/index' }); } else { res.render('msg', { code: 0, msg: '操作失败', url: '' }); } return; } var itemid = parseInt(req.query.itemid); if (!itemid) { res.render('msg', { code: 0, msg: '数据不存在', url: '' }); return; } //从数据库中读取文章 let data = await model.find("SELECT * from article where itemid=?", [itemid]); //加载模板文件 res.render(req.TPL, { data: data }); } async del(req, res) { //get获取的itemid var itemid = parseInt(req.query.itemid); if (!itemid) { res.render('msg', { code: 0, msg: '数据不存在', url: '' }); return; } //执行删除 let r = await model.delete("delete from article where itemid=?", [itemid]); //调用父类的msg方法 return this.msg(r, '', '/article/index'); } }; ```