微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Node.js Express博客项目实战 之新闻分类管理

 

在新闻管理中分为新闻分类管理、新闻管理、评论管理

分析新闻分类管理:

新闻分类数据库的字段:

 

 对新闻分类修改删除、查看功能

在该后台首页新闻管理部分写入跳转的路由:

<h2><span class="icon-user"></span>新闻管理</h2>
  <ul >
    <li><a href="/admin/type/" target="right"><span class="icon-caret-right"></span>新闻分类管理</a></li>
    <li><a href="/admin/news/" target="right"><span class="icon-caret-right"></span>新闻管理</a></li>
    <li><a href="/admin/comment/" target="right"><span class="icon-caret-right"></span>评论管理</a></li>
  </ul>   

 

后台路由中进行注册新闻分类路由:

// 新闻分类管理
let typeRouter = require('./admin/newtype.js');
router.use('/type',typeRouter);

 

在视图views中新建文件交type,写入加载的页面

newtype.js中分别写入加载的分类页面添加功能,以及修改功能

// 导入express
const express = require("express");

// 实例化router
const router = express.Router();

// 导入数据库相关内容
const MysqL = require("../../config/db.js");

// 分类查看页面
router.get("/",function(req,res,next){
        // 从数据库查询相关数据

    MysqL.query("select * from newstype order by sort desc",function(err,data){
        if (err) {
            return "";
        }else{
            // 加载页面
            res.render("admin/type/index.html",{data:data});
        }
    });
    
    
    
});

// 分类添加页面
router.get("/add",function(req,res,next){
    // 加载添加页面
    res.render("admin/type/add.html");
});

// 分类添加操作
router.post("/add",function(req,res,next){
    // 接收参数
    let {name,keywords,description,sort} = req.body;

    // 将数据插入到数据库MysqL.query("insert into newstype(name,keywords,description,sort) value(?,?,?,?)",[name,keywords,description,sort],function(err,data){
        // 判断是否错误
        if (err) {
            return "";
        }else{
            // 判断是否执行成功
            if (data.affectedRows==1) {
                res.send("<script>alert('添加成功');location.href='/admin/type'</script>");
            }else{
                res.send("<script>alert('添加失败');history.go(-1)</script>");
            }
        }

    })

});

// 分类修改页面

router.get('/edit',function(req,res,next){
    // 接受数据的ID

    let id = req.query.id;

    // 查询对应数据
    MysqL.query("select * from newstype where id = "+id,function(err,data){
        // 判断
        if (err) {
            return "";
        }else{
            console.log(data);
            
            // 加载修改页面
            res.render("admin/type/edit.html",{data:data[0]});
        }
    })    
    
//    res.send("管理员修改");
});


// 管理员数据修改功能
router.post("/edit",function(req,res,next){
    // 接受表单提交的数据
    console.log(req.body);
    

});





module.exports = router;

最终新闻分类显示效果

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐