我在使用 MongoDB/Rails 查询地理空间索引时遇到问题。我正在使用这个宝石 - https://github.com/kristianmandrup/mongoid_geospatial
这是我相当基本的模型:
class Company
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::Geospatial
field :name, type: String
field :location, type: Array, spatial: true
spatial_index :location
validates :location, location: true
end
然后,在我的控制器中,我有这个
#@vendors = Vendor.where(:location.near => {:point => [-2.1294761000000335,57.0507625], :max => 5})
但是,这并没有返回预期的结果(即,它从各地返回东西,而不仅仅是在那个特定的经度/纬度附近)
另外,我将如何进行geoNear?
这样我就可以取回每个结果与中心点的距离?
注意 写完这个问题后,我看到gem已经更新了,但我不确定是否有更好的选择..?