【问题标题】:Loopback query documents based on related model count基于相关模型计数的环回查询文档
【发布时间】:2018-12-25 16:29:33
【问题描述】:

我有一个与 Article 集合有 hasMany 关系的 Category 集合。我想查询类别并根据相关模型(文章)计数对结果进行排序/排序。

示例:

类别“A”有 5 篇文章

类别“B”有 6 篇文章

“C”类有 3 篇文章

我希望我的结果按 [B, A, C] 排序。

我使用 loopback v3 和 mongodb 作为我的数据库。

// My current code, querying published categories

Category.find({where : {isPublished : true}, order: 'something DESC'},function(error, result){
     console.log(result);
})

【问题讨论】:

    标签: node.js mongodb nosql loopbackjs loopback


    【解决方案1】:

    如果您只是对文章集合进行排序并在过滤器中包含相关类别集合会不会有任何问题

    【讨论】:

    • 但是它将如何解决我的问题。我可以检索所有类别并包含文章模型,然后在文章上应用 .length() 以了解哪个类别的文章最多,但这太重了,特别是如果我的数据库是中大型数据库。
    【解决方案2】:

    恐怕没有一点代码你是做不到的。

    正如纳德建议的那样,第一种方法是在远程函数或远程挂钩中对结果进行排序。

    第二种方法是在您的Category 模型中添加一个字段articlesCount,然后在远程挂钩中添加或删除每个article 更新此值。然后您可以直接在此属性上过滤和排序Category 实例。

    【讨论】:

      猜你喜欢
      • 2019-05-28
      • 1970-01-01
      • 1970-01-01
      • 2018-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多