nodejs表示错误:无法查找视图" / pages / message"在views目录中

时间:2015-12-12 03:51:01

标签: node.js express ejs

这很奇怪,因为它之前曾多次工作,但刚才我尝试使用res.render向客户端发送html页面时,我只是从标题中得到了错误。 html文件在views文件夹中是有缺陷的,所以可能是什么问题?

app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');

app.get('/photos', function(req, res) {
    res.render('/pages/photo');
});

app.get('/message', function(req, res) {
    res.render('/pages/message');
});

2 个答案:

答案 0 :(得分:1)

  1. 您不需要明确定义视图,它会自动默认为视图文件夹。
  2. 确保您的直接结构如下:
  3. /
       app.js <---the code above
       /views
           /pages
              photo.ejs
              message.ejs
    

    并删除&#39; /&#39;在@robertklep所述的观点之前

答案 1 :(得分:1)

模板路径应该是相对的(到views目录):

res.render('pages/photo');
res.render('pages/message');

文件也应以.ejs作为扩展名结尾。