【发布时间】:2016-05-23 03:55:54
【问题描述】:
好的,到此为止,我正在使用带有 sequalize.js 的 node.js 作为我的应用程序的 ORM。有一个名为 maxEntry 的 api 端点,它返回按“pubDate”排序的最新条目。但是,从我的应用返回的条目不是最新的。
这是我的数据库:
这就是我的 API 返回的内容:
这是我的代码:
//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();
});
});
}
你能帮忙解释一下为什么它没有拉出最新的条目吗?非常感谢!
【问题讨论】:
-
好吧算了,我是个白痴,订单查询错误,应该是:order: [ ['pubDate', 'DESC'], ]
标签: javascript mysql node.js sequelize.js restify