使用mongoose - 3.8.8连接到Mongo DB。我尝试了initializeOrderedBulkOp() - 一个MongoDB的新功能 - 在mongo Shell中的2.6,我得到了正确的输出。但我不能用猫鼬做同样的事 这是一个示例代码
var mongoose = require('mongoose');
var conn = mongoose.createConnection('mongodb://localhost:27017/testDB');
conn.on('error', function callback (err,data) {
console.log('Error in connecting to DB');
});
var Schema = mongoose.Schema,
schema = new Schema({id:Number},{strict:false}),
modelObj = conn.model('', schema, 'documents');
var query = modelObj.initializeOrderedBulkOp();
得到错误,例如“modelObj没有方法'initializeOrderedBulkOp”
对此有任何建议???
答案 0 :(得分:5)
你真的很亲近。您需要将级别下拉到本机驱动程序。你可以这样做:
var query = modelObj.collection.initializeOrderedBulkOp();
从那里你可以做以下事情:
// queue a doc to be inserted
query.insert({ name: 'Some Name' })
// ... more inserts ...
// execute the bulk operation
query.execute(next)
有一点需要注意,版本3.8.9中似乎不存在未命令的等价物initializeUnOrderedBulkOp()
。