【问题标题】:ordering results using mongoose in express在快递中使用猫鼬订购结果
【发布时间】:2012-09-22 03:16:45
【问题描述】:

我正在使用 mongoose 来创建和建模我的文档架构。

我在一堆不同的架构上有一个 user_id 属性,以及一个 created_at 日期属性。

我想生成一个列表,按 created_at 日期排序,以便在用户主页上显示为最近活动的提要。

我将如何查询几个不同的模型,然后将这些项目排序到一个数组中,然后我可以将其传递给我的 ejs 视图?

【问题讨论】:

    标签: node.js mongodb express mongoose ejs


    【解决方案1】:

    您可以使用sort function 对您的猫鼬查询进行排序。这里有两个例子:

    query.sort({ field: 'asc', test: -1 });
    

    Person
      .find({user_id: 123456})
      .sort('-created_at')
      .exec(function(err, person) {
        // push these results to your array and start another query on a different schema
      });
    

    【讨论】:

    • 这很好,但我想收集一堆不同的物品。 Person.find()、Comments.find() 等,然后按 created_at 排序所有这些
    • 根据 zeMirco 的回答,您必须对每个集合进行相同的查询,并将结果存储在一个复合数组中,然后您可以在运行所有查询后对其进行排序。
    猜你喜欢
    • 1970-01-01
    • 2011-08-28
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    • 2021-04-11
    • 1970-01-01
    • 2017-08-31
    • 2020-10-23
    相关资源
    最近更新 更多