记录一:mongodb v2.0.x版本与v3.0.x版本差异
//mongodb v2.0写法参考
var MongoClient = require('mongodb').MongoClient;
var url='mongodb://localhost:27017/blog';
MongoClient.connect(url,function(err,db){
var collection=db.collection('user');
collection.insert(user,function(err,result){
//...
});
db.close();
});
//mongodb v3.0写法参考
var MongoClient = require('mongodb').MongoClient;
var url='mongodb://localhost:27017';
MongoClient.connect(url,function(err,client){
var db=client.db('blog');
var collection=db.collection('user');
collection.insert(user,function(err,result){
//...
});
client.close();
});
对比可看出mongoClient.connect中回调的参数不一样,v2.0直接返回的是db,可直接操作数据库,而v3.0中返回的是client,需要先定位到要操作的数据库client.db('blog')再操作文档
记录二:connect-flash(报req.flash is not a function错误)
要注意app.use(flash());加载flash中间件的顺序,按照先require('connect-flash'),然后app.use(session()); 然后app.use(flash()); 最后配置路由的顺序来