我试图在服务器端进行upsert,使用自定义字段作为唯一标识符而不是mongo id(数据从第三方api中提取)。
我想要实现的简化版本:
var myItem = {
myUniqueID : 'abc123',
name: 'foo'
};
MyCollection.upsert(
{
"myUniqueID ": myItem.myUniqueID
},
{
"$set": myItem
}
);
我收到以下错误: 错误:Meteor当前不支持ObjectID以外的对象作为ids
答案 0 :(得分:0)
这似乎是由于我添加:
造成的MyCollection._ensureIndex({myUniqueID : 1}, {unique: 1});
宣布Mongo Collection后立即......即使我评论了这一行,损坏已经完成了......我不得不重命名该集合(基本上是创建一个新的集合)以超越它。