2017-03-12 7 views
0

で正常に動作します。このクエリを実行すると、1つだけが返され、常に同じユーザーになります。 User.find({ subscribed: true })の行をUser.find({})に置き換えると、すべてのアカウントが返されますが、コンソールにユーザーが表示されると、すべてが明らかにsubscribed: trueと表示されます。マングース()は生産に一つだけの文書を返す見つけるには、私はマングースで単純なクエリを持って開発

さらに、ローカル開発環境ではクエリが期待通りに実行されます。問題は本番サーバーでのみ発生します。これはmongo/mongoose/Nodeバージョンの問題でしょうか?

+1

あなたは生産からユーザーデータをコピーすることができますし、それを投稿? –

答えて

0

これを試してみてください:

var emails = []; 
User.find({ subscribed: true },(function(err, users) { 
    console.log(users) 
    if (err) { 
     console.log(err) 
    } 
    async.forEach(users, function(user, callback) { 
     if (emails.indexOf(user.email) == -1) { 
      console.log(user.email) 
      emails.push(user.email) 
      send(post, user.email) 
      callback()     
     } 
    }) 
}) 
+0

ありがとうございますが同じ結果です –

+0

asyncの代わりにlodash foreachを試してみてください –

+0

とconsole.log(ユーザー)の出力は何ですか –

関連する問題