在MongoDB中排序后获取对象的位置

时间:2016-04-23 17:45:06

标签: javascript mongodb sorting meteor

我正在开发一个Web应用程序,并且我使用MongoDB来存储数据。我能够对数据进行排序并正确显示,但我希望在使用Mongo对其进行排序后获取对象的位置。到目前为止,我有这段代码:

Websites.find({_id: {$lte: website_id}}, {sort:{upvotes: -1}}).count();

它不起作用。它返回的位置与sort:{upvotes: -1}无关。

所以,问题是,如何将1返回到最高评价,2返回第二,等等?

2 个答案:

答案 0 :(得分:0)

Websites.find({_id: {$lte: website_id}}, {sort:{upvotes: -1}}).fetch()

答案 1 :(得分:0)

这就是你如何做到的。

<template name="websites">
  <h2>My Websites list</h2>
  <div class="row">
    {{#each websites}}
      Index:{{@index}}
      Feild1:{{feild1}}
      Feild2:{{feild1}}
      ...
    {{/each}}
  </div>
</template>

Template.websites.helpers({
  websites: function () {
    return Websites.find({_id: {$lte: website_id}}, {sort:{upvotes: -1}});
  },
  index: function (index) {
    return ++index;
  },
})

我没有创建任何表格或列表,但根据您的要求,您也可以添加它。 我希望干草能解决问题。