私のテストスイートでは、データベースにテスト情報をバルク書き込みし、テスト中に入力されたテスト情報を一掃してクリーンスレートに戻したいとします。私はnodeJSのrequireステートメントを介してロードされたJSONファイルの内容を渡すdb上でbulkWriteを実行することでそうします。Mongoose bulkWrite - 'q'のタイプが間違っています
{ MongoError: Wrong type for 'q'. Expected a object, got a null.
at Function.MongoError.create (/var/www/website/server/node_modules/mongodb-core/lib/error.js:31:11)
at /var/www/website/server/node_modules/mongodb-core/lib/connection/pool.js:483:72
at authenticateStragglers (/var/www/website/server/node_modules/mongodb-core/lib/connection/pool.js:429:16)
at Connection.messageHandler (/var/www/website/server/node_modules/mongodb-core/lib/connection/pool.js:463:5)
at Socket.<anonymous> (/var/www/website/server/node_modules/mongodb-core/lib/connection/connection.js:339:20)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at readableAddChunk (_stream_readable.js:176:18)
at Socket.Readable.push (_stream_readable.js:134:10)
at TCP.onread (net.js:548:20)
name: 'MongoError',
message: 'Wrong type for \'q\'. Expected a object, got a null.',
ok: 0,
errmsg: 'Wrong type for \'q\'. Expected a object, got a null.',
code: 14,
codeName: 'TypeMismatch' }
:
問題は鍵が興味や行動のモデルの名前ですmodels[key].collection.bulkWrite(action[key])
、に渡されたデータセット
[ { deleteOne: { username: 'test-author' } } ]
のために、私は次のエラーを取得する、JSONファイルであるということです
私はいくつかの調査を行い、この問題の解決策を見つけることができませんでした。エラー自体は無意味なので、私はそれの多くを把握することはできません。どのように問題を解決するための任意のアイデア?
ご協力いただければ幸いです! 乾杯! MongoDB API 1として
jsonファイルにはモデル名がないため、null値がスローされます。 –
問題を再現するためにいくつかのサンプルデータを投稿することができます –
@ KARTHIKEYAN.A:モデル名を渡す必要がありますか?原因は最終的に 'models [key] .collection.bulkWrite(action [key])'の呼び出しが 'Author.collection.bulkWrite(action.Author)'に解決されるため、コレクションの作成者がScopeされていると思われます –