0

コレクションが存在しない場合は、コレクションを作成してデータを事前に入力するという簡単なチェックです。これは私のローカル ボックスで正常に動作し、db.collection 呼び出しに設定されている "strict" フラグに依存します。これは、coll が存在しない場合にエラーをスローします。Heroku では動作しませんが、その理由を知っている人はいますか?

mongo.Db.connect(mongoUri, function (err, db) {
  if (!err)
  {
    console.log("Connected to Database")
    db.collection('collectionName', {strict:true}, function(er, collection) {
      if (!er)
      {
        console.log("Collection opened, ready for use!")
      } else {
        console.log("DATA DOES NOT EXIST, PREPOPULATING")
        populateDB();
      }
    });
  } else {
    console.log("Error connecting to database: " + err)
  }
});

パッケージ.json

    {
    "name": "appname",
    "description": "Application",
    "version": "0.0.1",
    "private": true,
    "dependencies": {
        "express": "3.x",
        "mongodb": "1.3.x",
        "socket.io": "0.9.10"
    },
    "engines": {
        "node": "0.8.4",
        "npm": "1.1.49"
    }
}
4

1 に答える 1

0

気にしないでください-package.jsonファイルでNodeをバージョン0.10.xに更新したところ、修正されたようです。

于 2013-10-03T19:19:02.980 に答える