nodejs中實(shí)現(xiàn)修改用戶路由功能
經(jīng)過(guò)前面幾次的學(xué)習(xí),已經(jīng)可以做下小功能,今天要實(shí)現(xiàn)的是修改用戶路由。
一、users_model.js 功能:定義用戶對(duì)象模型
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服務(wù)器實(shí)現(xiàn)修改用戶路由
var crypto=require('crypto'); var mongoose=require('mongoose'),User=mongoose.model('User'); function hashPW(pwd){ return crypto.createHash('sha256').update(pwd). digest('base64').toString(); } //實(shí)現(xiàn)更新用戶路由 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服務(wù)器實(shí)現(xiàn)處理Web請(qǐng)求路由
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);
五、頁(yè)面顯示效果
總結(jié)
以上所述是小編給大家介紹的nodejs中實(shí)現(xiàn)修改用戶路由功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- JS實(shí)現(xiàn)前端路由功能示例【原生路由】
- nuxt.js 在middleware(中間件)中實(shí)現(xiàn)路由鑒權(quán)操作
- Nodejs封裝類似express框架的路由實(shí)例詳解
- 關(guān)于vue路由緩存清除在main.js中的設(shè)置
- vue.js路由mode配置之去掉url上默認(rèn)的#方法
- Vue.js路由實(shí)現(xiàn)選項(xiàng)卡簡(jiǎn)單實(shí)例
- Node.js 路由的實(shí)現(xiàn)方法
- 初學(xué)node.js中實(shí)現(xiàn)刪除用戶路由
- 如何制作自己的原生JavaScript路由
相關(guān)文章
Node.js實(shí)現(xiàn)批量下載圖片簡(jiǎn)單操作示例
這篇文章主要介紹了Node.js實(shí)現(xiàn)批量下載圖片簡(jiǎn)單操作,結(jié)合實(shí)例形式分析了node.js批量下載圖片的具體步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2020-01-01Node.js實(shí)現(xiàn)鏈?zhǔn)交卣{(diào)
這篇文章介紹了Node.js實(shí)現(xiàn)鏈?zhǔn)交卣{(diào)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07nodejs連接mysql數(shù)據(jù)庫(kù)簡(jiǎn)單封裝示例-mysql模塊
本篇文章主要介紹了nodejs連接mysql數(shù)據(jù)庫(kù)簡(jiǎn)單封裝(mysql模塊),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-04-04Express框架搭建項(xiàng)目的實(shí)現(xiàn)步驟
Express是一個(gè)基于Node.js平臺(tái)的輕量級(jí)Web應(yīng)用框架,它提供了簡(jiǎn)潔的API和豐富的功能,本文主要介紹了Express框架搭建項(xiàng)目的實(shí)現(xiàn)步驟,感興趣的可以了解一下2024-06-06