2017-12-12 6 views
0
  • こんにちは、私は少し問題があります、私はconsole.log();のデータベースMongoからのすべてのユーザーの電子メールを表示する。
  • 私はCRONを始めると、結果は未定義です。
  • あなたの答え

私のコードCRON NodeJs mongodb

var User = require('./models/user'); 

var CronJob = require('cron').CronJob; 
var job = new CronJob('0-59 0-59 0-23 * * 0-6', function(req, res) { 


    User.find(function(err, user) { 
     console.log("CRON is started !" + user.email) 
    }); 

}, function() { 
    /* This function is executed when the job stops */ 
    console.log("CRON is stoped !") 
}, 
true /* Start the job right now */ 
); 

答えて

0

のおかげで、私はMongoDBの関連のもののためにマングースを使ってアールを推測し、あなた自身のUserモデルを定義しました。 MongoDbの結果はオブジェクトの配列になりますので、user.emailは不可能です。配列内のすべての返されたオブジェクトを反復処理する必要があります。

は、使用してみてください:

// get all the users 
User.find({}, function(err, users) { 

    // optional but i would recommend to use it so that you can see possible errors with your query 
    if (err) throw err; 

    // iterate over all users of all the users 
    users.forEach(function(user) { 
    console.log("CRON is started !" + user.email); 
    }); 
}); 
+0

完璧:)は、お使いのマークの答えとして正しいので、さらに開発者は、あまりにもそれを修正することができますすることができますか? – rieckpil