2014-11-13 64 views
2

我有一個集合,其中每個文檔都有一個位置。我需要根據它們到給定起點的距離來排序文檔。此外,我希望只有距離出發點的距離不超過一定限度的文件。按照距離給定點的距離對結果進行排序,並通過mongoid中的最大距離對結果進行篩選

我曾嘗試以下:

Store.geo_near([32,32]).where(:geo_near_distance.lt => 2) 
# all docs whose location are at most 2 from [32, 32] 

以上以下錯誤結果:

NoMethodError: undefined method `where' for #<Mongoid::Contextual::GeoNear:0x438fb70> 

回答

0

我得到了它的工作:Mongoid6

Store.unscoped.where(
    :coordinates => { 
     '$nearSphere' => your_store.coordinates, 
     '$maxDistance' => distance_in_km.fdiv(111.12)}) 
相關問題