我试图做一个简单的更新
Collection.update(id, {$set:{name:value}});
Run Code Online (Sandbox Code Playgroud)
甚至
Collection.update({'_id':id}, {$set:{name:value}});
Run Code Online (Sandbox Code Playgroud)
但如果id是传统的mongodb id,该集合将不会更新.它似乎只适用于流星自己实现的唯一id.我该如何解决这个问题.流星有可能接受mongo自己的id结构吗?
小智 6
可以使用新的ObjectID将您的ID转换为mongodb对象(在服务器端),然后进行更新.:
var ObjectID, require;
require = __meteor_bootstrap__.require;
ObjectID = require("mongodb").ObjectID;
Meteor.methods({
SomeUpdate: function(upd) {
var id;
id = new ObjectID(upd['_id']);
return SomeDB.update({
_id: id
}, {
$set: {
field: value
}
}, function(res) {
return console.log(res);
});
}
});
Run Code Online (Sandbox Code Playgroud)