mongose応用例2則

2631 ワード

mongoseベースのテストプログラム1
例:modelsを作成する.jsファイル
var mongoose = require('mongoose')  //        
var Schema = mongoose.Schema  //      
var UserSchema = new Schema({  
userid : String , 
name : String ,  
password : String 
})  //          ,        users      
exports.User = mongoose.model('User',UserSchema)  //  Users   

例:indexを変更します.jsファイル、新しいコンポーネントモジュールの使用
var mongoose = require('mongoose')  //      
var models = require('./models')  //         
var User = models.User  //   User  ,   users  
mongoose.connect('mongodb://localhost/mldndb')  //      

データベース検証を使用する必要があるため、doLogin操作が最も変更されます.  
ログイン検証を完了するには、ユーザー名とパスワードに基づいてデータ量を取得するだけです.
 
db.users.count({userid:'mldn',password:'hello'})

返される数だけで、ユーザー名とパスワードが正しいかどうかを判断できます.
 exports.doLogin = function(req, res){ 
 //                
 var query_doc = {userid:req.body.userid , password:req.body.password}  //     
  User.count(query_doc,function(err,doc){//     mongodb          
if(doc == 0) { //     ,      
   res.redirect("/login")  
  } else { 
//    
 res.redirect("/welcome?uid=" + req.body.userid)  //      
}
})
};

さらに最も重要なのは、プロセス全体でデータベースの閉鎖問題を考慮せず、ユーザーの開発を極めて便利にすることです.
 
mongoseベースのテストプログラム2
model.js
 var mongoose = require('mongoose');
var Schema = mongoose.Schema;
// Define User schema 
var SchemaName = new Schema({ 
    email : String, 
    name : String, 
    salt : String, 
    password : String 
});
// export them 
module.exports = mongoose.model('QQ', SchemaName);

app.js
 var express = require('express'),
    User = require('./model');
    mongoose = require('mongoose');
 
mongoose.connect('mongodb://localhost/test');
var app = express.createServer();
// init data. Use "get" to simplify 
app.get('/init', function(req, res) { 
    var user = new User({ 
        email : , 
        name : 'maweitao' 
    }); 
    user.save(); 
    res.send('Data inited'); 
});
app.get('/users', function(req, res) { 
    User.findOne({name: 'maweitao'},function(err, doc) { //doc        name=maweitao      
       
  
  res.send(doc.email);
    }); 
});
app.listen(3000);
console.log("Express server listening on port %d in %s mode", app.address().port, app.settings.env);