当我尝试使用最新版本的meteor.js进行更新时,出现意外错误。类型错误没有指定它失败的字段,我不确定这是否与mongo相关。有没有人见过这个错误?
Error in Mongo write: TypeError: boolean is not a function
I20130901-19:44:56.515(-5)? at writeCallback (packages/mongo-livedata/mongo_driver.js:206)
I20130901-19:44:56.515(-5)? at Meteor.bindEnvironment.runWithEnvironment (packages/meteor/dynamics_nodejs.js:69)
我可以通过指定服务器端调用的回调来阻止我的客户端阻止。
答案 0 :(得分:5)
当我将{multi:true}
作为第二个参数传递给服务器上的Collection.remove
时,通常会发生这种情况。
答案 1 :(得分:1)
你用5个参数调用Collection.update,这有点太多了。请在docs。
中了解相关信息答案 2 :(得分:0)
我在这段代码上得到了同样的东西:
Templates.remove({_id: {$in: templateIDs}}, {multi:true});
仅仅为了记录,我仍然在0.7.0,这种类型的查询在0.8.1版本之前完美运行。如果没有我更新,它到底如何影响旧的0.7.0是无法理解的。他们是否将remove
的行为改为现在自动对所发现的所有内容进行{multi:true},因为这是我从Peppe L-G链接中理解的内容。
Edit1:后续,是删除, {multi:true}
修复了问题,但它仍然删除了mongodb中所有匹配的文档。我要么将mongodb从2.4.9更新到2.4.10,要么他们对0.7.0版本进行了更新,修复了Meteor的行为。