2
我有這個Node.js應用程序,它獲取了大量帶有唯一標識符的JSON數據,然後使用Mongojs將它們插入到MongoDB中。Mongojs:忽略重複對象插入
問題是,在這大量的數據中,可能會有一些重複的文檔!所以當使用Mongojs插入這些數據時,它會返回一個錯誤E11000 duplicate key error
,並且不會繼續插入。
所以我在找什麼就像本地蒙戈的continueOnError/keepGoing
選項。它會忽略重複並繼續insert
。
http://mongodb.github.io/node-mongodb-native/api-generated/collection.html#insert
這是我的代碼,如果有幫助:
var mongojs = require('mongojs'),
dburl = process.env.MONGOHQ_URL || 'mongodb://localhost/test',
db = mongojs(dburl, ['concerts']);
function insertData(data) {
db.concerts.insert(data, {keepGoing: true, safe: true}, function(err, docs){
console.log('err: ' + err + ' docs:' + docs);
if(!err) console.log('data inserted successfully!\n');
});
}
exports.insertData = insertData;
在這裏,在這個代碼,我選項設置爲true,但它仍然無法正常工作(同樣的錯誤)。
有無論如何,我可以用Mongojs做到這一點,還是我必須使用native-mongo?
在此先感謝。
但帕拉姆 「文檔」 總是空。你有解決方案來獲取所有插入的對象嗎? –
我只是再次測試,當沒有錯誤'docs'包含您的數據進行處理,相反,當有一個錯誤,如'重複密鑰','err' param包含錯誤消息和文件,錯誤。希望這可以幫助 – Hamed