我正在尝试使用mongoose从我的MongoDB获取最新的收集记录。
我目前的代码如下:
ApiData.findOne(
(err, data) => {
if (err) {
// res.status(200).send(err);
}
if (data) { // Search could come back empty, so we should protect against sending nothing back
// res.status(200).send(data);
console.log(data);
} else { // In case no kitten was found with the given query
// res.status(200).send("No kitten found");
}
}, { sort: { _id: -1 }, limit: 1 });
但这不能用于排序最新数据,只显示第一条记录。
答案 0 :(得分:2)
获取最新添加的数据:
ApiData.findOne({}).sort({date: -1}).exec(function(err, data) {
if (err) {
// res.status(200).send(err);
}
if (data) { // Search could come back empty, so we should protect against sending nothing back
// res.status(200).send(data);
console.log(data);
} else { // In case no kitten was found with the given query
// res.status(200).send("No kitten found");
}
});
要获取所有数据,只需将findone
替换为find
答案 1 :(得分:0)
我在搜索Stackoverflow后发现了我的问题。
通过删除, { sort: { _id: -1 }, limit: 1 });
并将.sort.({"_id": -1})
添加到结束括号的末尾来解决问题!
感谢您尝试回答我的问题!