gpt4 book ai didi

node.js - 如何使用没有快捷方式蓝图的 REST 搜索 sails.js 模型?

转载 作者:搜寻专家 更新时间:2023-10-31 22:22:00 25 4
gpt4 key购买 nike

我已经关闭了快捷方式蓝图(/model/findAll 不会工作),现在我想使用 REST 搜索模型,但我没有找到任何东西,是否有任何文档或我是否必须编写自己的 View 那个?

谢谢

最佳答案

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

Sails 自动将 Controller 中的操作映射到相应的路由,而无需您手动配置它们,要关闭此功能:在 config/controllers 中将 actions 标志设置为 false。 js文件

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

models/User.js

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

module.exports = {

attributes: {
name: 'string',
email: 'string'
}

};

controllers/UserController.js

我们的 Controller 有两个操作,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);
}
});
}

};

config/routes.js

我们的路由配置有两个只响应 GET 请求的路由,/user/all 将运行 findAll 操作和/user/name/:name 将运行 findByName在 URL 中将名称 作为参数给出的操作

module.exports.routes = {

'GET /user/all': 'UserController.findAll',
'GET /user/name/:name': 'UserController.findByName'

};

有关更多信息,请务必查看 documentation Sails.js 中的 Controller

关于node.js - 如何使用没有快捷方式蓝图的 REST 搜索 sails.js 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19293657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com