Node.js Sails.js-API属性未通过PUT更改

Node.js Sails.js-API属性未通过PUT更改,node.js,mongodb,sails.js,Node.js,Mongodb,Sails.js,我正在学习为node/express编写的教程,并尝试将其应用于sails。我用邮递员的名字写:Chris@localhost:1337/api/data/5591bbdedabb79240b34a46b sails -v 0.11.0 node -v 0.12.4 这是我的控制器: modify_one: function (req, res) { Api.findById(req.params.data_id, function(err, data, callback) {

我正在学习为node/express编写的教程,并尝试将其应用于sails。我用邮递员的名字写:Chris@localhost:1337/api/data/5591bbdedabb79240b34a46b

sails -v
0.11.0

node -v
0.12.4
这是我的控制器:

  modify_one: function (req, res) {

    Api.findById(req.params.data_id, function(err, data, callback) {

    if (err)
        res.send(err);

    data.name = req.body.name;

    data.update({data_id:req.params.data_id},{$set: {name:req.body.name}}, callback)

    })
路线:

'PUT /api/data/:data_id': 'ApiController.modify_one',
如果我得到/api/data,它不会显示修改。但是res.json(data.name)返回正确的更改


有什么想法吗?这一定是因为它没有保存在mongodb中?

我稍微改变了一下问题,没有出现错误。您在保存更改之前捕获了它。我看不到您将更改保存到数据库的位置。您正在获取当前文档,在本地更改它,然后返回它,从不保存。如果您使用mongoose,则需要添加的只是数据。当我尝试添加
data.save(function(err){If(err)res.send(err)时,save(function(){/*res.json(…)会在此处*/})出现;
我得到类型:Undefined error。对,因为您使用的是mongodb驱动程序,所以您需要使用它的api。我认为它没有附带.save。我对问题做了一些修改,没有错误。您在保存更改之前捕获了它。我看不到您将更改保存到数据库的位置。您得到的是当前文档,在本地更改它,然后返回它,从不保存。如果您使用mongoose,则需要添加的只是数据。当我尝试添加
data.save(函数(err){If(err)res.send(err)时,save(函数(){/*res.json(…)在这里*/})会出现;
我得到类型:Undefined error。好的,因为您使用的是mongodb驱动程序,所以需要使用它的api。我认为它没有附带。save。