如何使用REST而不使用快捷方式蓝图使用searchsails.js模型?

我已经closures快捷键蓝图(/模型/ findAll不会工作),现在我想search模型,使用REST,但我没有find任何东西,有没有任何文件或我必须写我自己的意见呢?

谢谢

       

网上收集的解决方案 "如何使用REST而不使用快捷方式蓝图使用searchsails.js模型?"

在Sails.js中 ,CRUD和REST蓝图路线是为开发而启用的,但是对于生产,我build议您有自己的操作,可以在给定的控制器中查找/创build/更新/删除模型

Sails会自动将控制器中的动作映射到相应的路由,而不必手动configuration它们,以closures它:在config / controllers.js文件中将actions标志设置为false

这最好用一个例子来解释,所以这里有一个基本的模型,有一些RESTful路线

车型/ user.js的

我们的模型有两个属性,并不强制唯一性

module.exports = { attributes: { name: 'string', email: 'string' } }; 

控制器/ UserController.js

我们的控制器有两个动作, findAll返回所有用户, findByName返回给定名字的用户

 module.exports = { findAll: function (req, res) { User.find().done(function (err, users) { if (err) { res.send(400); } else { res.send(users); } }); }, findByName: function(req, res) { var name = req.param('name'); User.findByName(name).done(function (err, users) { if (err) { res.send(400); } else { res.send(users); } }); } }; 

configuration/ routes.js

我们的路由configuration有两条路由只对GET请求做出响应,/ user / all将运行findAll动作,/ user / name /:名字将运行findByName动作,并在URL中给出一个参数

 module.exports.routes = { 'GET /user/all': 'UserController.findAll', 'GET /user/name/:name': 'UserController.findByName' }; 

有关更多信息,请务必查看Sails.js中控制器的文档

只是对前一篇文章的更新,因为我找不到其他人提到这个,而且我没有足够的评论声望,所以在更新版本的Sails.js中, connections.js文件已经被删除了。 这些configuration选项现在在blueprints.js文件中。