传统网站开发Node实战 --3.添加用户功能和编辑用户的实现

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

添加用户和修改用户共用一个模板,只是根据请求参数的不同,来渲染不同的数据

添加用户
  1. 为用户列表页面的新增用户按钮添加链接
  2. 添加一个对应的路由,在路由处理函数中渲染新增用户模板
  3. 为新增用户表单指定请求地址、请求方式,微表单添加name属性
  4. 增加实现添加用户的功能路由
  5. 接收到客户端传递过来的请求参数
  6. 对请求参数的格式进行验证
  7. 验证当前要注册的邮箱地址是否已经注册过了
  8. 对密码进行加密处理
  9. 将用户信息添加到数据库中
    10.重定向到用户列表页面
编辑用户
  1. 将要修改的用户ID传递到服务器
  2. 建立用户信息修改功能对应的路由
  3. 接收客户端表单传递过来的请求参数
  4. 根据id查询用户信息,并将客户端传递过来的密码和数据库中的密码进行比对,如果比对失败,对客户端做出响应。如果成功,将用户信息更新到数据库中。
代码部分

route/admin/user-edit.js:

const { User } = require('../../model/user')

module.exports = async(req, res) => {
    // 标识,表示当前访问的是用户管理页面
    req.app.locals.currentLink = 'user'
        // 获取到地址栏中的id 参数
    const { message, id } = req.query

    // 如果当前传递了id参数
    if (id) {
        // 修改操作
        let user = await User.findOne({ _id: id })

        // 渲染用户修改页面
        res.render('admin/user-edit', {
            message: message,
            user: user,
            link: '/admin/user-modify?id=' + id,
            button: '修改'
        })
    } else {
        // 添加操作
        res.render('admin/user-edit', {
            message: message,
            link: '/admin/user-edit',
            button: '添加'
        })
    }
}

views/admin/user-edit.art:

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值