mongoose:按id排序

时间:2014-06-26 17:51:47

标签: node.js mongodb mongoose

mongo db在文档更新时重新排序文档。我想要发生这种情况,所以我发现按_id使用顺序会以一致的顺序返回文档。但现在我无法排序。下面是我的查找查询,查找由特定用户创建的帖子,我正在尝试按_id排序。 代码:

app.get('/posts/:user_id',function(req,res){

posts.find({
    'creator.user_id':req.params.user_id
},[],{ sort: { '_id': -1 } },function(err,userpost){
    if(err)
        res.send(err);
    res.json(userpost);


})

});

1 个答案:

答案 0 :(得分:11)

第二个参数用于选择字段。您需要向第三个参数添加选项:

posts.find({'creator.user_id': req.params.user_id}, null, {sort: {'_id': -1}}, function(err,userpost) {
    if(err)
        res.send(err);
    res.json(userpost);
});

或者,您可以使用sort()功能:

posts.find({'creator.user_id': req.params.user_id}).sort({'_id': -1}).exec(function(err,userpost) {
    if(err)
        res.send(err);
    res.json(userpost);
});

您可以在documentation中找到更多示例。