做完才整理的,想到什么写什么,没有顺序
1.ejs中 partial()是已经被废弃的,要用include,否则会报变量未定义错;
2.new Date() 的时间是UTC时间,协调世界时(英:Coordinated Universal Time),比当前时区时间慢8小时,要用 new Date().toLocalString()
;
3.supervistor 启动express项目时不要启动 app.js (虽然书上这么写的),express现在启动的主函数(?是这么说)是 ./bin/www;
4.new Server(settings.host,27017,{}),{safe:true});
db.js 里面用到的这个函数第二个参数原文中是一个默认端口常量,现在版本应该没有了,所以直接写mongoDB端口号就行;
5.
var partials = require('express-partials')
var session = require('express-session');
var flash = require('connect-flash');
var MongoStore = require('connect-mongo')(session);
这些都是原文express2中自带的,现在版本要自己引入,注意MongolStore后面有参数session
6.
app.use(session({
resave:true,
saveUninitialized:true,
secret: settings.cookieSecret,
store: new MongoStore({
url: 'mongodb://localhost/microblog'
})
}));
建立数据库连接这段,跟原文有差别,少了两个
resave:true,
saveUninitialized:true,
参数会报莫名其妙的错,new MongoStore应该有其他写法
7.layout ,默认是没有的,我也没查到现在版本怎么加上默认的layout,只能每次在render函数后面加上layout属性,e.g
res.render('index', { title: 'Express' ,layout:'layout',posts : posts});
8.原书中引用的bootstrap是五年前的版本,直接引用现在的版本会出现很怪的布局
以上