更新:
5.2.10がリリースされ、ここからダウンロードできます。
ドキュメントの詳細については、https://mongoosejs.com/docs/deprecations
のページをご覧ください。この問題とその修正の詳細については、https://github.com/Automattic/mongoose/issues/6880
元の回答:
Mongoose 5.2.9バージョンは、ネイティブmongodbドライバーを3.1.3にアップグレードしました。このバージョンでは、非推奨のネイティブドライバーメソッドが呼び出されたときに警告メッセージをスローするように変更が追加されました。
フィールド オプションは廃止され、 Projectionに置き換えられました オプション。
フィールドオプションをプロジェクションに置き換えるには、マングースが最後に変更を加えるのを待つ必要があります。修正は5.2.10リリースで予定されています。
とりあえず、5.2.8に戻ると、すべての非推奨の警告が抑制されます。
npm install example@sqldat.com
他のすべての非推奨の警告については、ケースバイケースでそれらにアプローチする必要があります。
他の収集方法を使用すると、他の非推奨の警告が表示されます。
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.
すべてのfindOne* マングースの書き込みメソッドは、デフォルトで findAndModifyを使用します mongodbネイティブドライバーで非推奨になっているメソッド。
mongoose.set('useFindAndModify'、false);を使用します mongoooseに適切なfindOne*を呼び出させる mongodbネイティブドライバーのメソッド。
removeの場合 およびupdate これらの呼び出しをdelete*に置き換えます およびupdate* それぞれの方法。
save の場合 これらの呼び出しをinsert*に置き換えます /更新*コード> それぞれの方法。
mongoose.set('useCreateIndex'、true);を使用します mongoooseにcreateIndexを呼び出させる mongodbネイティブドライバーのメソッド。