我有一个猫鼬集合,该集合按先添加排序,我希望它按最后编辑的顺序排序
模型
var mongoose = require("mongoose");
var user = require("./user");
var questionSchema = new mongoose.Schema({
text: String,
asked: String,
answer: String
})
module.exports = mongoose.model("question", questionSchema);
放置请求代码:
router.put("/:user/:id", checkOwner, function(req, res){
question.findByIdAndUpdate(req.params.id, req.body.question, function(err,
updatedQuestion){
if(err) {
console.log(err);
} else {
res.redirect("/");
}
});
});
我希望将updatedQuestion放在我收藏的首位
答案 0 :(得分:0)
这是一种简单的方法:
首先,您必须在猫鼬模型中添加timestamps
,才能访问createdAt
和updatedAt
属性。
您可以了解有关时间戳here
var mongoose = require("mongoose");
var user = require("./user");
var questionSchema = new mongoose.Schema({
text: String,
asked: String,
answer: String
},
{ timestamps: true}
)
module.exports = mongoose.model("question", questionSchema);
然后,您可以查询集合,并按updatedAt
进行排序
question.find({}, {}, {sort: { 'updatedAt' : -1 }})
因此,最新的文档将首先显示。