我正在尝试按日期对我的 mongoose 条目进行排序,最近的在 node.js express with mongoose 中排在第一位。
Mongoose 查询是:
FecalRequest.findOne({uid: req.user.id}, {sort:{'createdAt':-1}}, (err, fecalkits) => {
console.log(fecalkits);
done(err, respiratorykits, fecalkits)
});
我已经尝试了 created_at 和 createdAt。错误是 eMongoError:不支持的投影选项:排序:{createdAt:-1}
作为引用,FecalRequest 模型如下所示:
const fecalSchema = new mongoose.Schema(
{
uid: String,
email: String,
status: {type: String, default: 'No Request' },
},
{ timestamps: true });
我只想返回特定用户最近创建的条目。
最佳答案
包含一个空对象作为第二个(投影)参数,以便您的第三个参数为 findOne
被正确解释为查询选项:
FecalRequest.findOne({uid: req.user.id}, {}, {sort:{'createdAt':-1}}, (err, fecalkits) => {
console.log(fecalkits);
done(err, respiratorykits, fecalkits)
});
绝对是我在回答中使用“粪便”这个词的次数最多。
关于node.js - Mongoose 错误不支持的投影选项 : sort: { createdAt: -1 },我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38937566/