2016-05-09 4 views
0

今私は動作する関数を作成し、現在時刻以前のすべてのメッセージを取得します。しかし、問題は、私がやりたいことではない最初のメッセージから始めます。は、続行の降順で日付をクエリするのに役立つ必要があります

この問題を解決するにはどうしたらいいですか?

module.exports.getMessages = function(chat_name, ammount, callback){ 
     Message.findAll({ 
      limit: ammount, 
      where: { 
       chat: chat_name, 
       createdAt:{ 
        $lt: new Date(), 
       } 
      } 
     }).then(function(dates){ 
      return callback(null, dates) 
     }).catch(function(err){ 
      return callback(err, null); 
     }) 
    } 

答えて

0

あなたはfindAllに渡されたオブジェクトするorderプロパティを追加する必要があります。 http://docs.sequelizejs.com/en/latest/docs/querying/#ordering

order: [['createdAt', 'DESC']]

module.exports.getMessages = function(chat_name, ammount, callback){ 
     Message.findAll({ 
      limit: ammount, 
      where: { 
       chat: chat_name, 
       createdAt:{ 
        $lt: new Date(), 
       } 
      }, 
      order: [['createdAt', 'DESC']] 
     }).then(function(dates){ 
      return callback(null, dates) 
     }).catch(function(err){ 
      return callback(err, null); 
     }) 
    } 

詳細

関連する問題