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 相关文章推荐
windows系统下简单nodejs安装及环境配置
Jan 08 NodeJs
用nodejs写的一个简单项目打包工具
May 11 NodeJs
跟我学Nodejs(二)--- Node.js事件模块
May 21 NodeJs
Nodejs进阶:如何将图片转成datauri嵌入到网页中去实例
Nov 21 NodeJs
详解nodejs中的process进程
Mar 19 NodeJs
Nodejs读取文件时相对路径的正确写法(使用fs模块)
Apr 27 NodeJs
nodejs实现的简单web服务器功能示例
Mar 15 NodeJs
NodeJS父进程与子进程资源共享原理与实现方法
Mar 16 NodeJs
NodeJs搭建本地服务器之使用手机访问的实例讲解
May 12 NodeJs
nodejs之koa2请求示例(GET,POST)
Aug 07 NodeJs
Nodejs对postgresql基本操作的封装方法
Feb 20 NodeJs
node快速搭建后台的实现步骤
Feb 18 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图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
js代码实现微博导航栏
2015/07/30 PHP
php格式化时间戳
2016/12/17 PHP
JavaScript脚本性能的优化方法
2007/02/02 Javascript
JavaScript让IE浏览器event对象符合W3C DOM标准
2009/11/24 Javascript
jquery里的each使用方法详解
2010/12/22 Javascript
让input框实现类似百度的搜索提示(基于jquery事件监听)
2014/01/31 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
javascript使用smipleChart实现简单图表
2015/01/02 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
2015/12/04 Javascript
jQuery使用模式窗口实现在主页面和子页面中互相传值的方法
2016/03/01 Javascript
分享javascript实现的冒泡排序代码并优化
2016/06/05 Javascript
使用AngularJS对表单提交内容进行验证的操作方法
2017/07/12 Javascript
PHP自动加载autoload和命名空间的应用小结
2017/12/01 Javascript
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
详解使用React.memo()来优化函数组件的性能
2019/03/19 Javascript
JS数组方法join()用法实例分析
2020/01/18 Javascript
vue fetch中的.then()的正确使用方法
2020/04/17 Javascript
Python编程中的反模式实例分析
2014/12/08 Python
python datetime中strptime用法详解
2019/08/29 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
2020/06/01 Python
Django Session和Cookie分别实现记住用户登录状态操作
2020/07/02 Python
HTML5手指下滑弹出负一屏阻止移动端浏览器内置下拉刷新功能的实现代码
2020/04/10 HTML / CSS
英国手机壳购买网站:Case Hut
2019/04/11 全球购物
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
模具设计与制造专业推荐信
2014/02/16 职场文书
仓库管理员岗位职责
2014/03/19 职场文书
贸易跟单员英文求职信
2014/04/19 职场文书
建筑工地宣传标语
2014/06/18 职场文书
工程造价专业求职信
2014/07/17 职场文书
学校党的群众路线教育实践活动总结材料
2014/10/30 职场文书
工作时间调整通知
2015/04/24 职场文书
大学生就业意向书
2015/05/11 职场文书
社区挂职锻炼个人工作总结
2015/10/23 职场文书
Python 线程池模块之多线程操作代码
2021/05/20 Python
英镑符号 £
2022/02/17 杂记