2012-03-26 27 views
0

行动我开始用Node.js和受Express.JS,我想跟进MVC模式。我发现快车资源(https://github.com/visionmedia/express-resource)这似乎不错,但它并没有解决我的问题,100%,因为你可以看到它遵循REST方案,所有的POST请求被发送到创建方法,这是一个问题,我尝试用一​​个例子来解释它:如何创建自定义控制器在Express.JS

我有一个控制面板,我可以显示,编辑,创建,删除一个客户。

当我完成编辑costumer时,我用POST请求发送详细信息,如果我使用该模块(express-resource),“create”方法会自动调用,但对我来说毫无意义,我想呼叫根据URL的行为,所以:

/users/create:我把它当我需要创建一个用户帐户。它应接受GET和POST

GET:看,让我来创建用户表单

POST:发送信息时,我完成

所以我一直想一个路径,如:

/PATH/:action/:params (like: /users/edit/1) 

但我想避免调用创建方法,当我不创造任何东西。

+0

在我看来,表达资源建模在REST模式之后,并且您想要类似于RPC的其他内容。在这种情况下,快递资源可能不适合您。为什么不建立在Express之上,并根据自己的喜好设置路由? – 2012-03-26 11:27:19

+0

@LinusGThiel是的,我需要自己开发它,因为它对我的目的不好 – Dail 2012-03-26 12:35:59

回答

1

为什么不使用裸骨表达?

app.get("https://stackoverflow.com/users/:userid/create", function (req, res, next) { 
    // serve the form 
}); 

app.post("https://stackoverflow.com/users/:userid/create", function (req, res, next) { 
    // save in the database 
}); 
+0

@JanJomgboom因为如果我有很多页面,我需要有很多很多的路线,如那些 – Dail 2012-03-26 16:36:56

+0

app.get(“/:entity/:id/create“,function(...){...}) ? – radekg 2012-03-26 20:38:50

相关问题