1. ホーム
  2. mongodb

mongooseで生のmongodbの操作を行うには?

2023-12-26 21:16:12

質問

私はユニットテストを書くときに、テストデータベースをドロップして、いくつかの初期化データを挿入し、またテスト中にmongodbのデータをチェックしたいので、これを聞いています。だから私はmongodbに生の操作が必要です。

mongooseでこれを行うにはどうしたらよいでしょうか?今できることは、接続を作成することだけで、mongooseの公式サイトには何もドキュメントがありません。

 var mongoose = require('mongoose');
 mongoose.connect('mongo://localhost/shuzu_test');

 // get the connection
 var conn = mongoose.connection;

しかし、どのように

  1. データベースを削除する
  2. コレクションを作成する
  3. コレクションにデータを書き込む
  4. コレクションに問い合わせる
  5. コレクションを削除する

どのように解決するのですか?

ドキュメントの「ドライバ アクセス」のセクションを参照してください。 http://mongoosejs.com/

基本的にアクセス権を得るには node-mongodb-native ドライバにアクセスするには YourModel.collection で、次に insert または remove または drop など、必要なものは何でも構いません。

ドキュメントがあるわけではありませんが、この方法でここにあるすべてのものにアクセスできるようになります。 https://mongoosejs.com/docs/api.html#collection-js

編集する。

あなたの場合、テストスイートでmongooseを使うのをスキップして node-mongodb-native を直接使うか、あるいは単純な mongodb シェルスクリプト を書き、テストを始める前にそれを実行することもできます。