在我的 Meteor 应用程序中使用 upsert 时出现错误。我有一个具有权限的集合...
Parts = new Mongo.Collection('parts');
if (Meteor.isServer) {
Parts.allow({
insert : function () {
return true;
},
update : function () {
return true;
},
remove : function () {
return true;
}
});
}
以及检查是否已创建具有“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”错误时不断收到服务器错误 Exception:无效修饰符。修饰符必须是对象。
我已经尝试修改代码,但没有任何效果。
最佳答案
检查是方法的一部分,而不是upsert
。试试这个:
Meteor.methods({
partsUpsert: function (partName, content) {
check(content, Number);
check(partName, String);
return Parts.upsert({name: partName}, {$set: {vertices: content}});
}
});
关于javascript - meteor upsert 返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27412941/