【发布时间】:2016-03-14 10:06:53
【问题描述】:
我无法使用 mongoose 对 mongo 进行批量插入。
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
// Define our results schema
var webSchema = new Schema({"abc" : String},{
collection: 'web_v2'
});
MyApi.prototype.Webs= mongoose.model('Webs', webSchema);
resultData = [{"abc": "12121221"},{"abc": "44545"},{"abc": "545"}]
MyApi.prototype.Webs.collection.insert(resultData, function (err, myDocuments) {
if (err) {
console.log(err);
} else {
console.log("web inserted : " + myDocuments.result.n);
}
});
我收到以下错误
MongoError: Invalid Operation, No operations in bulk
at Function.MongoError.create (/pathtoapp/node_modules/mongoose/node_modules/mongodb/node_modules/mongodb-core/lib/error.js:31:11)
at toError (/pathtoapp/node_modules/mongoose/node_modules/mongodb/lib/utils.js:114:22)
at OrderedBulkOperation.execute (/pathtoapp/node_modules/mongoose/node_modules/mongodb/lib/bulk/ordered.js:500:11)
at bulkWrite (/pathtoapp/node_modules/mongoose/node_modules/mongodb/lib/collection.js:582:8)
at Collection.insertMany (/pathtoapp/node_modules/mongoose/node_modules/mongodb/lib/collection.js:477:44)
at Collection.insert (/pathtoapp/node_modules/mongoose/node_modules/mongodb/lib/collection.js:753:15)
at NativeCollection.(anonymous function) as insert (/pathtoapp/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:136:28)
at /pathtoapp/index.js:481:57
at /pathtoapp/node_modules/async/lib/async.js:721:13
at /pathtoapp/node_modules/async/lib/async.js:52:16
at async.forEachOf.async.eachOf (/pathtoapp/node_modules/async/lib/async.js:236:30)
at _parallel (/pathtoapp/node_modules/async/lib/async.js:712:9)
at Object.async.parallel (/pathtoapp/node_modules/async/lib/async.js:726:9)
at /pathtoapp/index.js:479:43
at /pathtoapp/node_modules/async/lib/async.js:721:13
at /pathtoapp/node_modules/async/lib/async.js:52:16
请任何人告诉我我做错了什么。?
【问题讨论】:
-
任何人都面临同样的问题..?
-
我现在遇到同样的问题,有更新吗??
-
Web.collection.insert是 Mongo 语法,而不是 Mongoose。我不确定它为什么会失败。但是由于你使用的是 Mongoose,你可以使用Webs.insertMany(resultData)。 docs here
标签: node.js mongodb express mongoose mongodb-query