1

私はmongoにかなり慣れていないことに注意してください。さらに、ノード/ jsの使用に非常に慣れていません。

コレクション内の新しいドキュメントを挿入するか、既存のドキュメントを更新するクエリを作成しようとしています。

コレクションの提案された構造は次のとおりです。

{ _id: xxxxxxx, ip: "xxx.xxx.xxx.xxx:xxxxxx", date: "xx-xx-xx xxxx" }

私の意図は、内部 ObjectId ではなく _id の固定長 int を格納することであることに注意してください (これは可能/考えられる悪い習慣ですか?)。int は一意であることが保証され、別のソースから取得されます。

var monk = require('monk');
var db = monk('localhost:27017/cgo_schedule');

var insertDocuments = function(db, match) {
    var db = db;
    var collection = db.get('cgo_schedule');
    collection.findAndModify(
      {
        "query": { "_id": match.matchId },
        "update": { "$set": { 
            "ip": match.ip,
            "date": match.date
            },
        "$setOnInsert": {
          "_id": match.matchId,
        }},
        "options": { "new": true, "upsert": true }
      },
      function(err,doc) {
        if (err) throw err;
        console.log( doc );
      }
  );
}

ただし、これはまったく機能しません。データベースには何も挿入されませんが、エラーも発生しないため、何が間違っているのかわかりません。

出力 ( のconsole.log (doc)) はヌルです。

私は何を間違っていますか?

4

1 に答える 1