Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js mongoose是否支持initializeOrderedBulkOp(),这是MongoDB-2.6中的一个新特性_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js mongoose是否支持initializeOrderedBulkOp(),这是MongoDB-2.6中的一个新特性

Node.js mongoose是否支持initializeOrderedBulkOp(),这是MongoDB-2.6中的一个新特性,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,Am使用mongoose-3.8.8连接到MongoDB。我在MongoShell中试用了initializeOrderedBulkOp()——MongoDB-2.6的一个新特性,得到了正确的输出。但是我不能对猫鼬做同样的事情。 下面是一个示例代码 var mongoose = require('mongoose'); var conn = mongoose.createConnection('mongodb://localhost:27017/testDB'); conn.on('erro

Am使用mongoose-3.8.8连接到MongoDB。我在MongoShell中试用了initializeOrderedBulkOp()——MongoDB-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”方法”


有什么建议吗?

你真的很接近了。您需要将级别降低到本机驱动程序。您可以这样做:

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)

但是需要注意的是,未排序的等价物,
initializeUnderedBulkop()
,在3.8.9版中似乎不存在

当我使用下面的代码“var bulk=modelObj.collection.initializeOrderedBulkOp();bulk.insert({user:“abc123”,status:“A”,points:0});bulk.insert({user:“def123”,status:“B”,points:0});bulk.execute(next);“错误是”类型错误:无法调用未定义的“insert”方法”是的,那真的很有趣。在我在Mac上使用的驱动程序中,该方法存在,但我只是在Heroku上尝试过,我得到了相同的错误。最好是在猫鼬回购协议上发行一个版本。有没有一个版本可以回拨?它失败,因为尚未建立基础连接。典型的Node.js流需要回调。是否有具有回调的版本?它失败,因为尚未建立基础连接。典型的Node.js流需要回调。类似于:```modelObj.collection.initializeOrderedBulkOp(函数(err,query){query.insert(..);})```