User.findOne在SailsJs中充当User.Update

时间:2016-12-07 08:28:09

标签: javascript mysql node.js sails.js blueprint

我在SailsJs中根据用户ID请求blueprint路由User.findOne,但它本身正在调用User.update。此外,我刚刚经历了一个新事物,即在向findOne发送多个参数时,它会根据任何单个匹配参数更新记录。另一方面,如果我创建一个名为user.findOne的控制器并通过控制器调用相同的路径,它的工作完全正常。

这是SailsJs的正确行为还是我在任何地方都犯了一些错误?

1 个答案:

答案 0 :(得分:1)

我有同样的问题,仍然想知道为什么会这样, 我甚至尝试在我的控制器中使用一些示例代码创建update函数,但是当我尝试从邮递员点击findOne时,它会将我重定向到我创建的update函数。 等待这个严重问题的答案。

但是我通过尝试这样的方法找到了一个解决方案(即在控制器中创建自定义findOne功能)并且它有效:

findOne : function (req,res){
    var myReq = req.params.all();
    console.log(myReq);
    User.findOne(myReq, function UserFound(err, user){
        if (err) return res.negotiate("User not found!");

        else{
            console.log("I am getting here");
            console.log(user);
            return res.status(200).send(user);
        }
    })
}