Sailsjs Model.update无法在控制器

时间:2015-10-26 14:52:33

标签: node.js sails.js waterline

只是一个快速的初学者问题......

是否允许控制器在Sails中执行更新?我知道动作路线的确如此,但是我无法获得这样的代码来更新。

//controller code (this DOES NOT update)

Packets.update({packet:5},{cron:'locationhistory'})
.then( function(r){
        console.log(r);
    });

这个过程有效,所以我很困惑为什么以上不会。

//controller code that does work, however I'm calling a custom function
sails.models.packets.updateMyPacket('locationhistory', 9, function( response ){
        console.log(response);
    });

// model code
updateMyPacket: function( p, num, cb) {
Packets.update({ cron: p}, {packet: num}).then( function( packets){
    cb(packets);
});

}

有人可以帮忙吗?我错过了什么?

感谢 马特

2 个答案:

答案 0 :(得分:1)

在您的示例中,您可以在两种不同的方法之间交换标准和值。

答案 1 :(得分:0)

如果要更新文档,则必须使用set()函数。

Pets.update({id:1})。set({id:2})

所以现在该文档的ID为:2,之前的ID为:1