Node.js操作mongodb数据库
作者:网络转载 发布时间:[ 2014/12/25 15:11:44 ] 推荐标签:数据库
6、修改index.js,因为想在这里注册时候把数据存入到数据库中,所以这里需要引用上面第四步创建的model。具体代码如下所示。
var User = require('../models/user');
/*
* GET home page.
*/
exports.index = function(req, res){
User.find({}, function (err,users) {
res.render('index', { title: 'Express',users:users });
});
};
exports.reg=function(req,res){
res.render('reg',{title:'Register Page'});
};
exports.doReg=function(req,res){
var user = new User(req.body.user);
user.save(function (err, user) {
if(!err) {
console.log(user);
res.redirect('/')
}
});
console.log(req.body.user);
};
这一步要注意为什么是req.body.user,这里是前面写页面直接用user[]这种形式带来的好处,如果单独写name="username",那么这里应该是下面这种形式。
var user = new User({
name:req.body['username'],
password:req.body['password']
});
user.save是把刚才数据提交到数据库,具体使用方法参看官方文档。save成功之后执行什么操作自己发挥吧。保存之前也可以进行一些简单的表单验证等等。
7、通过登录来讲如何从数据库取出数据,继续修改index.js,如下所示。
var User = require('../models/user');
/*
* GET home page.
*/
exports.index = function(req, res){
User.find({}, function (err,users) {
res.render('index', { title: 'Express',users:users });
});
};
exports.login=function(req,res){
res.render('log',{title:'Login Page'});
} ;
exports.doLogin=function(req,res){
var user = req.body.user;
User.find(user,function(err,docs){
if(!err){
if(docs!=''){
console.log(docs);
return res.redirect('/');
} else{
console.log('用户名或密码不正确');
return res.redirect('/log');
}
}else{
console.log("Something happend.");
}
})
};
exports.reg=function(req,res){
res.render('reg',{title:'Register Page'});
};
exports.doReg=function(req,res){
var user = new User(req.body.user);
user.save(function (err, user) {
if(!err) {
console.log(user);
res.redirect('/')
}
});
console.log(req.body.user);
};
这里通过find()方法来查询数据库,使用方法不解释了。第一个参数user是要查询的数据,从输入框获取过来的,如果不是用user[]这种形式定义的name属性,那么这里一样的用{naem:req.body['username'],password:req.body['password']}这样的写法。回调函数docs是从数据库查询返回的结果。
例子到此结束。

sales@spasvo.com