sql >> Database >  >> NoSQL >> MongoDB

MongoDB-waarschuwing voor afschaffing van mangoest

Bijwerken:

5.2.10 is uitgebracht en kan hier worden gedownload.

Voor meer informatie over de documenten kunt u de pagina bekijkenhttps://mongoosejs.com/docs/deprecations

Voor meer informatie over het probleem en de oplossing https://github.com/Automattic/mongoose/issues/6880

Oorspronkelijk antwoord:

Mongoose 5.2.9-versie heeft de native mongodb-driver geüpgraded naar 3.1.3 waarin wijzigingen zijn toegevoegd om waarschuwingsberichten te genereren wanneer de verouderde native driver-methode wordt aangeroepen.

fields optie is verouderd en wordt vervangen door projection optie.

U zult moeten wachten tot mangoesten aan het einde wijzigingen hebben aangebracht om de veldenoptie te vervangen door projectie. De fix is ​​gepland voor release 5.2.10.

Voorlopig kun je teruggaan naar 5.2.8, waarmee alle waarschuwingen voor beëindiging worden onderdrukt.

npm install [email protected]

Voor alle andere verouderde waarschuwingen moet u ze per geval benaderen.

U ziet andere waarschuwingen voor beëindiging wanneer u andere verzamelmethoden gebruikt.

DeprecationWarning: collection.findAndModify is deprecated. Use findOneAndUpdate, findOneAndReplace or findOneAndDelete instead.
DeprecationWarning: collection.remove is deprecated. Use deleteOne, deleteMany, or bulkWrite instead.
DeprecationWarning: collection.update is deprecated. Use updateOne, updateMany, or bulkWrite instead.
DeprecationWarning: collection.save is deprecated. Use insertOne, insertMany, updateOne, or updateMany instead.
DeprecationWarning: collection.ensureIndex is deprecated. Use createIndexes instead.

Alle findOne* Mongoose-schrijfmethoden gebruiken standaard de findAndModify methode die is verouderd in de native driver van Mongodb.

Gebruik mongoose.set('useFindAndModify', false); om mangoeste de juiste findOne* te laten bellen methode op de Mongodb native driver.

Voor remove en update vervang die oproepen door delete* en update* respectievelijk methoden.

Voor save vervang die oproepen door insert* / update* respectievelijk methoden.

Gebruik mongoose.set('useCreateIndex', true); om mangoeste de createIndex te laten bellen methode op de Mongodb native driver.



  1. Meteor strategieën voor publiceren/abonneren voor unieke client-side collecties

  2. MongoDb C# GeoNear Query-constructie

  3. Hoe verwijder ik vastgelopen/verouderde Resque-werknemers?

  4. Hoe documenten opvragen met behulp van het veld _id in het Java-mongodb-stuurprogramma?