嘿,我试图调试一个错误,该错误是通过使用node.js和ExpressJS呈现.jade页面。
错误是:Error: Failed to lookup view "/workspace/friends" in views directory "C:\Users\Utilizador\Documents\GitHub\QuantBull-Project\views"
。
那么发生此错误的原因是什么。我问这个是因为据说它应该工作正常,至少它与其他文件有关...
我创建了一个以下GET监听器,位于controller/workspace.js
以呈现文件:
/**
* GET /workspace/friends
*/
app.get('/workspace/friends', function (req, res) {
res.render('/workspace/friends', {
url: '/workspace'
});
});
,名为friends.jade
的文件位于views/workspace
。
所以我想知道是什么导致了这个错误?因为这种情况与我在SO和其他人身上发现的具有相同错误消息的其他情况相比看起来不同......
答案 0 :(得分:1)
我想我想通了,问题在这里。
使用以下
res.render('workspace/friends')
而不是
res.render('/workspace/friends')
当您说res.render('somefolder/file)
时,它会在views/someolder/file
中进行搜索。因为您说res.render('/somefolder/somefile)
因此应该与/
混淆。