Javascript Meteor upsert返回错误

Javascript Meteor upsert返回错误,javascript,mongodb,meteor,Javascript,Mongodb,Meteor,我在Meteor应用程序中使用upsert时出错。我有一个具有权限的集合 Parts = new Mongo.Collection('parts'); if (Meteor.isServer) { Parts.allow({ insert : function () { return true; }, update : function () { return true; }, remove : function () {

我在Meteor应用程序中使用upsert时出错。我有一个具有权限的集合

Parts = new Mongo.Collection('parts');

if (Meteor.isServer) {
  Parts.allow({
    insert : function () {
      return true;
    },
    update : function () {
      return true;
    },
    remove : function () {
      return true;
    }
  });
}
以及一个upsert方法,用于检查是否已经创建了具有“partName”的文档

Meteor.call( 'partsUpsert', partName, content );

Meteor.methods({
    partsUpsert: function (partName, content) {
        Parts.upsert(
            check(content, Number),
            check(partName, String),
            {name: partName},
            { 
                $set: {vertices: content}
            }
        );
    }
});
如果尚未创建,则应将新文档插入数据库。但是我在调用“partsUpsert”方法时不断得到服务器错误
异常错误:无效修饰符。修饰符必须是对象。


我尝试过修改代码,但没有任何效果。

检查是方法的一部分,而不是
插入。试试这个:

Meteor.methods({
  partsUpsert: function (partName, content) {
    check(content, Number);
    check(partName, String);

    return Parts.upsert({name: partName}, {$set: {vertices: content}});
  }
});