Moongose .geoNear聚合,添加基本查询选项

时间:2016-04-19 08:24:59

标签: javascript node.js mongodb mongoose

我正在使用MongooseNode.jsgeoNear聚合函数。

这是我的一段代码,就像一个魅力:

User.geoNear({ type: "Point", coordinates: [geo.lon, geo.lat] }, {
    spherical: true,
    maxDistance: 50,
  }, function(err, results, stats) {
    if (err) {
      // handle err
    }
}

现在我想添加基本查询选项,例如使用mongodb $nin选项排除文档。例如,我想搜索给定位置周围的用户(就像我在我的示例中所做的那样)但是约束不匹配给定的ids。 怎么可能在我的查询中添加这种选项?

1 个答案:

答案 0 :(得分:1)

您可以使用聚合框架。尝试:

<section class="wrapper">
  <div class="row-fluid">
    <div class="span6 desc-table">
      <div class="row-fluid">
        <div class="span6 desc-title-table">
          <!-- display:table -->
          <span class="desc-title">Coverage:</span>
          <!-- display:table-cell -->
        </div>
        <div class="span6">
          <span class="desc-text">24sqm/Litre per coat</span>
        </div>
      </div>
    </div>
    <div class="span6 desc-table">
      <div class="row-fluid">
        <div class="span6 desc-title-table">
          <!-- display:table -->
          <span class="desc-title">Drying Time:</span>
          <!-- display:table-cell -->
        </div>
        <div class="span6">
          <span class="desc-text">Approx. 8 – 10 hours in normal conditions.</span>
        </div>
      </div>
    </div>
  </div>
</section>

上面的查询将搜索半径为5000米的所有文档,并排除给定_id的文档。