2016-05-10 4 views
10

Mongoose werfen einen Fehler d. H. "MongoError: ns nicht gefunden" wenn ich versuche, Ansammlung zu fallen.MongoError: ns nicht gefunden, wenn Versuch, Ansammlung zu fallen

Hier ist mein Mungo Code:

var mongoose = require('bluebird').promisifyAll(require('mongoose')); 
...... 
...... 
...... 
mongoose.connection.db.dropCollection("myCollection",function(err,affect){ 
    console.log('err',err); 

}) 

Fehler:

err { [MongoError: ns not found]
name: 'MongoError',
message: 'ns not found',
ok: 0,
errmsg: 'ns not found' }

+1

Sie sind nicht auf die Datenbank (mit 'mongoose.connect()') verbindet. – robertklep

+0

Mungo hat keine Tropfenauffangmethode. Chekout [this] (http://stackoverflow.com/a/10088410/2165143) Antwort für weitere Informationen. –

+0

Ja, ich habe verwendet mongoose.connect(). @robertklep – vineet

Antwort

13

MongoError: ns not found tritt auf, wenn Aktionen auf Sammlungen durchführen, die nicht existieren.

Zum Beispiel versuchen Indizes vor einer expliziten Sammlung Schaffung fallen aufgetreten ist oder bevor ein Dokument der Sammlung hinzugefügt, die implizit die Sammlung erstellt.

+0

So In diesem Fall können Sie keine Sammlung löschen, die nicht an erster Stelle existiert. ns ist wahrscheinlich für Namespace? –

+0

https://github.com/mongodb/mongo/blob/acd196d77043d007b07b48b6e2c4fb13cfa5b938/src/mongo/db/catalog/drop_collection.cpp#L71 –

Verwandte Themen