如何编写一个path,以path参数为目标

如果我有多个像“/ some / url / path / foo / bar1”,“/ some / url / path / foo / bar2”,“/ some / url / path / foo / bar3”等。一个单一的路线,将指挥的url到foo控制器和bar1,bar2,bar3等的动作

例如。 (只有这个不行。)

'/ some / url / path / foo /:bar':'foo.:bar'

有不同的方法来做到这一点。 我可能会build议你在你的控制器中不需要不同的动作,但是在一个单独的动作中只有不同的情况会响应一个url参数(ex bar )。 这将更符合公约。

不过,你可以用下面的方法来完成你想要的。

创build你的路线

 '/some/url/path/foo/:action': { controller: 'FooController', action: 'getAction' } 

然后在该控制器中创build一个getAction方法。 这个方法现在可以使用req.param.actionvariables来查找执行相应的动作。

 FooController.getAction = function(req,res,next){ return sails.controllers.foo[req.param.action](req,res,next) }