【发布时间】:2017-05-30 13:23:29
【问题描述】:
我正在使用 Express 和 Mongoose 实现 REST API。我的任务是对包含大量文档的集合的结果进行分页。文档是一个社交媒体帖子,具有以下字段:created_at、updated_at 和 score。
由于数据的性质,使用限制和页码的普通分页实现不起作用。用户在浏览结果时可以删除或添加帖子。
我可以按照 MongoDB 文档中的建议实现基于范围的分页。 页面中的最后一项 created_at 值可用于查询下一页。
Post.find({ created_at: { $gt: req.query.next } })
但是如果我想按不是唯一的或所有分数相同的 score 对结果进行排序怎么办?
【问题讨论】:
-
Mongo
cursor.sort()可以根据多个字段进行排序 -
例如,我提出了一个问题。我找不到使它起作用的组合键。按 created_at 排序,分数没有区别。
标签: mongodb rest express mongoose