Я использую Mongoid 3.1.6 с Rails 4. Мне нужно найти все объекты «рядом» с определенной координатой. Для каждого результата поиска мне нужно будет отображать расстояние от координаты поиска. Согласно документации Mongoid
... каждый созданный документ из запроса $geoNear получит специальный динамический атрибут geo_near_distance, который будет доступен, пока документ находится в памяти.
Но я не могу получить доступ к Object.geo_near_distance
Мой запрос внутри контроллера...
@objects = Object.geo_near([-118.4451, 34.0633]).max_distance(10)
Редактировать №1
Некоторые дополнительные детали
Если использовать следующий запрос в MongoDB
db.runCommand( { geoNear: "objects",
near: [ -73.95269,40.77578],
spherical: true
})
Я вижу массив из 100 элементов. Каждый элемент имеет 2 атрибута. Первый, «dis», имеет такие значения, как «0,000123» (Примечание: это не в км или милях), а второй атрибут — это сам объект результата.
Теперь я изменил запрос на Mongoid на...
@objects = Object.geo_near([-118.4451, 34.0633]).spherical.max_distance(10)
до сих пор нет результата. Заранее спасибо за вашу помощь.