2016-02-12 3 views
3

Хорошо, вот оно, я использую node.js с sequalize.js как ORM для моего приложения. существует конечная точка api, называемая maxEntry, которая возвращает последнюю запись, отсортированную по «pubDate». Однако запись, возвращаемая из моего приложения, не является последней.Sequalize.js, max pubDate модели, возвращающей старую запись вместо последнего

Это моя база данных:

enter image description here

и это то, что возвращается из моего API:

enter image description here

Это мой код:

//Entity Models 
var Entry = sequelize.define('entry', { 
    title: Sequelize.STRING, 
    pubDate: Sequelize.DATE, 
    countryCode: Sequelize.STRING, 
    description: Sequelize.TEXT, 
    type: Sequelize.STRING 
}); 

var server = restify.createServer(); 
server.use(restify.bodyParser()); 
server.use(restify.CORS()); 

server.get('/maxEntry', maxEntry); 

server.listen(8080, function() { 
    console.log('API listening at %s', server.url); 
}); 

function maxEntry(req, res, next) { 
    Entry.sync().then(function() { 
     Entry.findOne({ 
      where: { 
       type: 'Warning' 
      }, 
      order: [ 
       sequelize.fn('max', sequelize.col('pubDate')) 
      ] 
     }).then(function (entry) { 
      res.send(entry); 
      next(); 
     }); 
    }); 
} 

Не могли бы вы помочь, почему не вытягивая последнюю запись? Большое спасибо!

+0

хорошо забыть, я идиот, запрос заказа неправильно, должен быть: заказ: [ ['pubDate', 'DESC'], ] – Hirvesh

ответ

0

хорошо забыть, я идиот, запрос заказа неправильно, должно быть: заказ: [[ «PubDate», «DESC»]]