我正在建立一个类似app的博客,可以在管理信息中心创建帖子,公共用户可以通过类别和固定链接访问已发布的帖子。
我在考虑如何在我的快递应用程序中注册路线时遇到了问题。
我想到的解决方案是获取所有帖子并使用for循环在app init上注册路由。控制器非常简单,只需渲染相同的模板。
posts.forEach((post)=> {
app.get(':' + post.category + '/:' + post.slug, renderPostGenericController);
})
想要审核此解决方案并知道是否还有其他更好的方法可以做到这一点。
答案 0 :(得分:3)
您可以注册一条路线:
app.get('/post/:category/:slug', (req, res) {
// req.params.category
// req.params.slug
...
});
这样,在您的路线处理程序中,您可以访问这两个参数。现在,您可以使用提供的类别和slug从DB(或任何位置)获取正确的帖子。