在sails.js控制器中调用超级方法

当我在sails.js中创build一个控制器并重新定义了一些标准方法时,如何调用此控制器的默认父级方法?

module.exports = { create: function(req, res) { //test some parameters if (condition) { //call regular super method, proceed as usual //_super(); <- how to do this? } else { //do some other things } } }; 

       

网上收集的解决方案 "在sails.js控制器中调用超级方法"

更新:对于Sails> = v0.10.x,请参阅@ naor-biton 下面的注释

如果你想访问默认实现(blueprint),从v0.9.3开始,你可以调用next() (你的控制器的第三个参数)。 这是因为Sails基于中间件的Express / Connect概念,可以将事情链接在一起。

请注意,这个行为可能会在后续版本中改变,因为next()也是如何调用你的默认404处理程序( config/404.js )的行动,其中没有一个蓝图。

如果您有兴趣使用蓝图但事先运行一些逻辑,则更好的方法是将控制器操作置于未定义状态,并使用一个或多个预先运行的策略。