このエラーはどこから来たのですか? NodejsアプリケーションでensureIndex
またはcreateIndex
を使用していません。 yarnパッケージマネージャーを使用しています。
index.js
のコードは次のとおりです
import express from 'express';
import path from 'path';
import bodyParser from 'body-parser';
import mongoose from 'mongoose';
import Promise from 'bluebird';
dotenv.config();
mongoose.Promise = Promise;
mongoose.connect('mongodb://localhost:27017/bookworm', { useNewUrlParser: true });
const app = express();
問題は、 mongoose はまだcollection.ensureIndexを使用しているため、近い将来それらによって更新される必要があるということです。メッセージを削除するには、package.jsonでバージョン5.2.8を使用してダウングレードできます(そして、キャッシュを削除します。最後の手段は、npm install [email protected]でそれをアンインストールすることです) ):
「マングース」:「^ 5.2.8」
EDIT:この編集の時点で、Mongooseはv5.4.13になりました。ドキュメントごとに、これらは非推奨の警告に対する修正です...
mongoose.set('useNewUrlParser', true);
mongoose.set('useFindAndModify', false);
mongoose.set('useCreateIndex', true);
Update()をupdateOne()、updateMany()、またはreplaceOne()に置き換えます
Remove()をdeleteOne()またはdeleteMany()に置き換えます。
コレクション全体(フィルターなし)に含まれるドキュメントの数をカウントする場合を除き、count()をcountDocuments()に置き換えます。後者の場合は、timatedDocumentCount()を使用します。