我在sailJs中创建了一个API。我可以使用ID从数据库中找到数据,通过获取请求
sails generate api dentist
我想编写自定义查询来获取数据。我无法弄清楚如何做同样的事情。
我可以通过 Model.query()来实现,但无法找到方法
这是我的模型文件
module.exports = {
tableName: 'user',
autoCreatedAt: false,
autoUpdatedAt: false,
attributes: {
name:{type: 'string'}
}
};
需要帮助。
答案 0 :(得分:2)
已经找到了答案,我们可以在控制器中编写查询。
这是做到这一点的方法,
module.exports = {
/*
function to return select data
*/
getdata: function(req,res) {
var key = req.body.name+"%";
var post = [];
post.push(key);
Dentist.query('select * from where name like ? limit 10',post,function(err,result){
return (!err)? res.ok(result) : res.ok({error:'error occured'});
});
}
}
我在这里注意到的另一件事是任何模块/ api的模型都可以用来调用查询。
答案 1 :(得分:2)
有两种方法可以执行查询:您可以使用查询语法执行此操作,在这种情况下,您不关心使用哪种模型,它适用于所有内容。
或者您可以使用水线提供的ORM:
Dentist.find({ where: { name: 'theNameHere' }, limit: 10});
在这种情况下,您需要使用包含答案的特定模型。 您可以在此处查看文档:{{3}}