1

我正在尝试通过_id执行以下批量更新操作:

let bulk = Transactions.rawCollection().initializeOrderedBulkOp();

transactions.forEach((t) => {             
   let query = { '_id' : new Meteor.Collection.ObjectID(t._id._str) };
   bulk.find( query ).update( { $set: { balance: t.balance, updated_at: new Date() } } );
});
bulk.execute(Meteor.bindEnvironment((err, res) => {
     if (!err) {
             callback(null, true);
      } else {
             console.log("Error Ocurred");
             callback(true, null);
       }
}));

但是 _id 的这个查找查询不起作用。如果我通过任何其他字段查询它就可以了。但我不能这样做,因为 Collection 只有一个唯一字段作为“_id”。

编辑

以下是事务 MongoDB 文档

{ 
    "_id" : ObjectId("5899f8a15d79b02f6075100d"), 
    "transaction" : "Charge",
    "description" : "01/01/2017 - 01/28/2017", 
    "created_by" : "SYSTEM",
    "residency_id" : "6pFs3sBMZPtp3e5N9", 
    "value" : 25.82, 
    "balance" : 25.82, 
    "created_at" : ISODate("2017-02-07T16:41:05.718+0000"), 
    "updated_at" : ISODate("2017-02-07T18:08:05.378+0000")
}

需要帮助。TIA

4

0 回答 0