我使用Express创建一个简单的CRUD。
每个控制器的I views/posts
和views/users
视图,所以我想放在一边。
我app.set app.js以便使用views/posts ( "views", path.join (__ dirname, "./views/posts"))
;
我注册了。
并在控制器上写了一个res.render("show")
来呈现views/show.pug
,这正常工作。
但是我有话要问。要使用views/users
,我还必须注册app.set("views", path.join(__ dirname, "./views/users"));
,如果要注册,如何创建渲染图发送给users/show
?
我不知道我的做法是否正确。
我的目录由视图,控制器和路由组成。 route仅通过url接受请求,并将回调传递给控制器。然后控制器执行必要的逻辑并执行渲染或重定向。
我想问的最后一件事是渲染和重定向之间的区别。为什么res.redirect("show")
工作时res.render("show")
工作?我必须显示重定向的绝对路径吗?
答案 0 :(得分:0)
首先设置视图设置:
app.set("view engine", "pug");
然后按如下所示调用文件:
res.render("posts/filename.pug");
res.render("users/filename.pug");