如何编写一个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.action
variables来查找执行相应的动作。
FooController.getAction = function(req,res,next){ return sails.controllers.foo[req.param.action](req,res,next) }