Я запрашиваю коллекцию MongoDB из приложения, созданного с помощью Express + Mongoose. Я ищу документы на определенном расстоянии от географической точки. Результаты показывают документы за пределами максимального расстояния, которое я указываю.Как правильно указать максимальное расстояние в запросе geoNear в Mongoose?
Эта модель для коллекции я: поиск информации
LocationSchema = new mongoose.Schema({
id: {
type: String,
unique: true
},
ref: String,
name: String,
loc: {
type: [Number], // [<longitude>, <latitude>]
index: '2d' // create the geospatial index
}
});
Это код, который запрашивает БД (через Мангуст):
var queryOptions = {
maxDistance: 30,
// maxDistance : 30/6371, // <-- (this doesn't work)
distanceMultiplier: 6371, // tell mongo how many radians go into one kilometer.
spherical: true,
limit: 60
};
location.geoNear([latitude, longitude], queryOptions, processResults);
В этом скриншоте, Coords я указал в запросе находятся центр Дублина. Результаты, как вы можете видеть, намного дальше, чем указанное максимальное расстояние 30 км.
Где я пошла не так?