好的,开始吧,我使用带有 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 - Sequelize.js,模型的最大 pubDate 返回旧条目而不是最新条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35355166/