MongoDb中有多个更新的问题

我有这样的结构:

{ "_id" : ObjectId("51596b7e469b9c3816000001"), "company" : { "_id" : "ade2fd0ec9b8b5e9152e0155", "title" : "LO3426546457" }, } { "_id" : ObjectId("51596cef469b9c3816000008"), "company" : { "_id" : "ade2fd0ec9b8b5e9152e0155", "title" : "LO3426546457" }, } { "_id" : ObjectId("51596cc3469b9c3816000007"), "company" : { "_id" : "ade2fd0ec9b8b5e9152e0155", "title" : "LO3426546457" } } 

而且我想用特定的“_id”来改变对象的所有“标题”字段。 我喜欢这个:

 Collections.UsersCollection.update({ 'company._id': 'ade2fd0ec9b8b5e9152e0155' }, { $set: { 'company': { _id: 'ade2fd0ec9b8b5e9152e0155', title: 'blablabla' } // I also tried: 'company.title': 'blablabla' } }, false, true); 

在Node.js(我使用node-mongodb-native)执行代码之后,mongo 更新一个文档。

但是,如果我在Mongo Shell(mongo.exe)执行该命令,则一切正常,并更新所有文档。

有什么问题?

默认情况下,mongo只更新一个文档。 http://docs.mongodb.org/manual/reference/method/db.collection.update/

使用多个选项进行多个文档更新。

默认情况下,collection.update()仅更新单个文档,如果需要更新多个文档,则必须在callback函数之前添加{multi:1}参数。