sql >> Database >  >> NoSQL >> MongoDB

db.collection is geen functie bij gebruik van MongoClient v3.0

Voor mensen met versie 3.0 van het MongoDB native NodeJS-stuurprogramma:

(Dit is van toepassing op mensen met "mongodb":"^3.0.0-rc0", of een latere versie in package.json, die de nieuwste versie willen blijven gebruiken.)

In versie 2.x van de MongoDB native NodeJS-driver zou je het database-object als argument voor de connect callback krijgen:

MongoClient.connect('mongodb://localhost:27017/mytestingdb', (err, db) => {
  // Database returned
});

Volgens de changelog voor 3.0 krijg je nu in plaats daarvan een client-object dat het database-object bevat:

MongoClient.connect('mongodb://localhost:27017', (err, client) => {
  // Client returned
  var db = client.db('mytestingdb');
});

De close() methode is ook verplaatst naar de klant. De code in de vraag kan daarom worden vertaald naar:

MongoClient.connect('mongodb://localhost', function (err, client) {
  if (err) throw err;

  var db = client.db('mytestingdb');

  db.collection('customers').findOne({}, function (findErr, result) {
    if (findErr) throw findErr;
    console.log(result.name);
    client.close();
  });
}); 


  1. Kan ik twee kolommen uniek voor elkaar maken? of samengestelde primaire sleutels in redis gebruiken?

  2. Eenvoudig gebruik van EM::Synchrony#sync veroorzaakt 'root fiber' FiberError -- mijn fout?

  3. Vind dubbele records in MongoDB

  4. redis + gevent - Slechte prestaties - wat doe ik verkeerd?