Как найти документы с $ geowithin, а затем использовать $ geonear агрегатный конвейер для создания поля расстояния? - PullRequest
0 голосов
/ 09 октября 2019

У меня есть коллекция домов в MongoDB. Я хочу сначала найти все дома в пределах радиуса с заданным местоположением ($ geowithin), а затем создать поле расстояния для всех этих документов, используя совокупный конвейер $ geonear. Как мне соединить их вместе?

Model.find({
location: { $geoWithin: { $centerSphere: [[lng, lat], radius]} }

})

Model.aggregate([
{
  //PLEASE NOTE: GeoNear must always be the first stage in the pipeline
  $geoNear: {
    near: {
      type: 'Point', 
      coordinates: [lng, lat]
    }, 
    distanceField: 'distance', 
    distanceMultiplier: multiplier
  }
}
...