如何在mongoose中进行排序?

238

我找不到关于排序修饰符的文档。唯一的线索在于单元测试中: spec.lib.query.js#L12

writer.limit(5).sort(['test', 1]).group('name')

但对我来说不起作用:

Post.find().sort(['updatedAt', 1]);

8
阅读此答案,获取最新回答。 - Francisco Presencia
21个回答

0

你也可以使用aggregate()进行排序

 const sortBy = req.params.sort;
  const limitNum = req.params.limit;
  const posts = await Post.aggregate([
    { $unset: ['field-1', 'field-2', 'field-3', 'field-4'] },
    { $match: { field-1: value} },
    { $sort: { [sortBy]: -1 } },  //-------------------> sort the result
    { $limit: Number(limitNum) },
  ]);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接