Express中路由的URL生成

Ish*_*bir 17 node.js express

我正在考虑在我的下一个node.js项目中使用Express框架.然而,对我来说,一个绊脚石是没有像大多数其他非基于Sinatra的框架那样的路由生成,例如Django,Flask,Rails等.

我尝试寻找一些Connect中间件来完成我的任务,我确实找到了Barista,Escort,Sherpa等等,但是看着他们的GitHub页面,所有这些都显得已经死亡并且处于活跃状态.所以,我不想因为显而易见的原因而去找那些不再维护的东西.

我主要担心的是项目可能会变得非常大,每当业务和/或美学要求发生变化时,更新每个页面中的URL都会很麻烦.

有没有我在文档/测试中看不到的东西?如果没有,那么如何在Express中扩展路由框架以生成URL并使我的视图和控制器功能中的包装器可用?

更新:(22/3/2012)我找到了这个页面:https://github.com/clyfe/tweet_express/wiki/TODO,它指定了一些做URL生成的路由器,偶然发现了也可以与express接口的护送路由器.

ant*_*xic 14

或坚持快递并使用包可逆路由器.

自述文件的示例:

app.get('/admin/user/:id', 'admin.user.edit', function(req, res, next){
    //...
});

//.. and a helper in the view files:
url('admin.user.edit', {id: 2})
Run Code Online (Sandbox Code Playgroud)


小智 10

您可以尝试使用Express构建的机车.

它不仅仅是路由生成.来自文档:"机车带来了额外的基于MVC的结构,用于构建更大的应用程序,同时利用Express和Connect中间件的强大功能."

机车的路由器生成自动可用于控制器和视图的帮助程序.

  • 2019年的注意事项:机车自2014年以来未进行过更新。 (2认同)