0

herokuスケジューラからmongo dbにエントリを追加しようとしています。しかし、現在、「node app/bin/trackStats」を使用してテストしています

これが私のモデルです。

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var StatsSchema = new Schema({
  // eMail address
  totalblc: { type: Number, required: false},
  date: { type: Date, default: Date.now },
  difficulty: {type: Number, unique: true},
  up: {type: String, required: false},
  // Name
});


module.exports = mongoose.model('Stats', StatsSchema);

エンティティを追加するコードは次のとおりです #!/app/bin/node

var request = require('request');
var Stats = require('../models/stats');


function getStats() {
  request('http://someurl.com/', function (error, response, body) {
    if (!error) {
      console.log("tesT");
      console.log(body) // Print the google web page.
      var obj = JSON.parse(body);

      var coins = obj.coins;
      var difficulty = obj.difficulty;
      var up = obj.status;
      var stat = new Stats();
      stat.totalblc = coins;
      stat.difficulty = difficulty;
      stat.up = up;
      stat.save(function (err) {
        if (err) {
          console.log(err);


        }

        console.log("IN");
      });
     console.log("aa"); 
    }
    else {
      console.log(error);
      console.log("TEST");
    }
  });

}

getStats();

すべてのデータを正しく console.log しますが、データベースには何も追加されません。

4

1 に答える 1

0

あなたのコメントに基づいて:

エラーの原因を突き止めたと思います。それは、データベース アドレスが /app/config/initializers/03_mongoose.js で定義されており、これがスクリプトによって読み取られていないか、認識されていないことです。スクリプトに mongoose.connect を手動で追加すると機能しますが、2 つの接続を作成しようとするため、他のページが台無しになります。だから私はまだ立ち往生しています

...マングースを学んでいたときに私が抱えていた問題があります。

StackOverflow については、次を参照してください。

  1. 別のモジュールでの Mongoose モデルの定義
  2. express: すべての DRY を維持して、mongoose 接続モジュールを作成します (新しい createConnection メソッドを使用)
  3. マングースとモデルの接続
于 2013-05-13T02:50:46.340 に答える