MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB Ostrzeżenie o wycofaniu mangusty

Aktualizacja:

5.2.10 jest wydany i dostępny do pobrania tutaj.

Więcej informacji na temat dokumentów można znaleźć na stronie https://mongoosejs.com/docs/deprecations

Więcej informacji na temat problemu i jego rozwiązania https://github.com/Automattic/mongoose/issues/6880

Oryginalna odpowiedź:

Wersja Mongoose 5.2.9 zaktualizowała natywny sterownik mongodb do wersji 3.1.3, w której dodano zmiany powodujące wyświetlanie komunikatów ostrzegawczych po wywołaniu przestarzałej metody sterownika natywnego.

fields opcja jest przestarzała i zastąpiona przez projection opcja.

Będziesz musiał poczekać, aż mangusta wprowadzi zmiany na swoim końcu, aby zastąpić opcję pól projekcją. Poprawka jest zaplanowana na wydanie 5.2.10.

Na razie możesz wrócić do wersji 5.2.8, która wyłączy wszystkie ostrzeżenia o wycofaniu.

npm install [email protected]

W przypadku wszystkich innych przestarzałych ostrzeżeń należy podchodzić do nich indywidualnie.

Podczas korzystania z innych metod gromadzenia danych zobaczysz inne ostrzeżenia o wycofaniu.

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.

Wszystkie findOne* Metody zapisu mongoose domyślnie używają findAndModify metoda, która jest przestarzała w natywnym sterowniku mongodb.

Użyj mongoose.set('useFindAndModify', false); aby mangusta wywołała odpowiedni findOne* metoda na natywnym sterowniku mongodb.

Dla remove i update zastąp te wywołania delete* i update* metody odpowiednio.

Dla save zastąp te wywołania insert* / update* metody odpowiednio.

Użyj mongoose.set('useCreateIndex', true); aby mangusta wywołała createIndex metoda na natywnym sterowniku mongodb.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wyposażony w szyfrowanie kopii zapasowych dla MySQL, MongoDB i PostgreSQL — ClusterControl 1.5.1

  2. Importujesz plik JSON za pomocą mongimport, czy nadal otrzymujesz „nieoczekiwany identyfikator”?

  3. Wiele populacji - mongoosejs

  4. Jak wstawić dokument do mongodb za pomocą mongoose i uzyskać wygenerowany identyfikator?

  5. MongoDB Ruby Driver 2.5.x Problemy z rozróżnianiem wielkości liter w nazwach hostów w zestawach replik