nodejs中实现修改用户路由功能


Posted in NodeJs onMay 24, 2019

经过前面几次的学习,已经可以做下小功能,今天要实现的是修改用户路由。

一、users_model.js  功能:定义用户对象模型

var mongoose=require('mongoose'),
   Schema=mongoose.Schema;
var UserSchema=new Schema({
   username:{type:String,unique:true},
   email:String,
   color:String,
   hashed_password:String
});
mongoose.model('User',UserSchema);

二、users_controller.js  功能:为Express服务器实现修改用户路由

var crypto=require('crypto');
var mongoose=require('mongoose'),User=mongoose.model('User');
function hashPW(pwd){
  return crypto.createHash('sha256').update(pwd).
  digest('base64').toString();
}
//实现更新用户路由
exports.updateUser=function(req,res){
  User.findOne({_id:req.session.user})
  .exec(function(err,user){
    user.set('email',req.body.email);
    user.set('color',req.body.color);
    user.save(function(err){
      if(err){
        res.sessor.error=err;
      }else{
        req.session.msg='User Updated. ';
      }
      res.redirect('/user');
    });
  });
};

三、user.html

<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="UTF-8">
<title>用户修改</title>
<link rel="stylesheet"type="text/css" href="/static/css/styles.css" />
 <script src="https://cdn.staticfile.org/angular.js/1.5.8/angular.min.js"></script>
 <script src="/static/js/my_app.js"></script>
</head>
<body>
 <div class="form-container" ng-controller="myController">
  <p class="form-header">用户修改</p>
  <form method="POST" action="/user/update">
  <label>用户名:</label>
   <input type="text" name="username" ng-model="user.username" disabled><br>
   <label>Email:</label>
   <input type="email" name="email" ng-model="user.email"><br>
   <label>肤色:</label>
   <input type="text" name="color" ng-model="user.color"><br>
   <input type="submit" value="Save">
 </form>
 </div>
 <form method="POST" action="/user/delete">
 <input type="submit" value="删除用户">
 </form>
 <hr><%=msg%>
 <hr>{{error}}
</body>
</html>

四、routes.js 功能:为Express服务器实现处理Web请求路由

var crypto=require('crypto');
var express=require('express');
module.exports=function(app){
  var users=require('./controllers/users_controller');
  app.use('/static',express.static('./static')).
  use('/lib',express.static('../lib')
);
app.post('/user/update',users.updateUser);

五、页面显示效果

nodejs中实现修改用户路由功能

总结

以上所述是小编给大家介绍的nodejs中实现修改用户路由功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

NodeJs 相关文章推荐
nodejs中exports与module.exports的区别详细介绍
Jan 14 NodeJs
NodeJS学习笔记之Connect中间件模块(一)
Jan 27 NodeJs
NodeJS学习笔记之Connect中间件模块(二)
Jan 27 NodeJs
详解nodejs 文本操作模块-fs模块(三)
Dec 22 NodeJs
nodejs中全局变量的实例解析
Mar 07 NodeJs
解析NodeJS异步I/O的实现
Apr 13 NodeJs
nodejs模块学习之connect解析
Jul 05 NodeJs
nodejs 使用http进行post或get请求的实例(携带cookie)
Jan 03 NodeJs
Nodejs实现用户注册功能
Apr 14 NodeJs
详解微信小程序-获取用户session_key,openid,unionid - 后端为nodejs
Apr 29 NodeJs
nodejs实现UDP组播示例方法
Nov 04 NodeJs
在nodejs中创建child process的方法
Jan 26 NodeJs
nodejs实现用户登录路由功能
May 22 #NodeJs
基于nodejs的微信JS-SDK简单应用实现
May 21 #NodeJs
nodejs中实现用户注册路由功能
May 20 #NodeJs
nodejs实现日志读取、日志查找及日志刷新的方法分析
May 20 #NodeJs
NodeJS读取分析Nginx错误日志的方法
May 14 #NodeJs
nodejs搭建本地服务器并访问文件操作示例
May 11 #NodeJs
M2实现Nodejs项目自动部署的方法步骤
May 05 #NodeJs
You might like
php实现MySQL数据库备份与还原类实例
2014/12/09 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
2017/02/08 PHP
php实现评论回复删除功能
2017/05/23 PHP
表单填写时用回车代替TAB的实现方法
2007/10/09 Javascript
Jquery 表单取值赋值的一些基本操作
2009/10/11 Javascript
图片onload事件触发问题解决方法
2011/07/31 Javascript
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
2011/10/29 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
2013/01/02 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
IE6-IE9中tbody的innerHTML不能赋值的解决方法
2014/09/26 Javascript
深入理解JavaScript系列(43):设计模式之状态模式详解
2015/03/04 Javascript
JQuery记住用户名密码实现下次自动登录功能
2015/04/27 Javascript
javascript实现链接单选效果的方法
2015/05/13 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
Angular封装表单控件及思想总结
2019/12/11 Javascript
pymongo实现多结果进行多列排序的方法
2015/05/16 Python
Python3安装Pymongo详细步骤
2017/05/26 Python
基于hashlib模块--加密(详解)
2017/06/21 Python
Python退火算法在高次方程的应用
2018/07/26 Python
Python时间差中seconds和total_seconds的区别详解
2019/12/26 Python
python tqdm实现进度条的示例代码
2020/11/10 Python
python 利用jieba.analyse进行 关键词提取
2020/12/17 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
2021/01/13 Python
CSS3动画和HTML5新特性详解
2020/08/31 HTML / CSS
美国乡村商店:Plow & Hearth
2016/09/12 全球购物
台湾网友喜爱的综合型网路购物商城:Yahoo! 奇摩购物中心
2018/03/10 全球购物
英国护发和美妆在线商店:Klip Shop
2019/03/24 全球购物
采购求职信
2014/03/17 职场文书
销售团队激励口号
2014/06/06 职场文书
2014党支部对照检查材料思想汇报
2014/10/05 职场文书
电信营业员岗位职责
2015/04/14 职场文书
贫困证明书范文
2015/06/16 职场文书
幼儿园见习总结
2015/06/23 职场文书
小学信息技术教学反思
2016/02/16 职场文书
java中如何截取字符串最后一位
2022/07/07 Java/Android