Ruby Geocoder意外地工作

时间:2014-11-14 14:12:56

标签: google-maps ruby-on-rails-4 ruby-2.0 rails-geocoder

使用Alex Reisner的Ruby Geocoder,我有一个模特" Spot"使用此宝石进行地理编码

如果我选择第一个点和对象:

s = Spot.first

然后尝试找到半径10英里范围内的所有景点(让我们说它们应该有12个),然后我希望 Spot.near(s,10)到返回包含12个点的活动记录对象。相反,它每次只返回这样的东西:

Spot.near(s1,10)
 => {:select=>"spots.*,  AS distance, CAST(DEGREES(ATAN2( RADIANS(spots.longitude - -6.88671972656243), RADIANS(spots.latitude - 55.1729431175342))) + 360 AS decimal) % 360 AS bearing", :conditions=>["spots.latitude BETWEEN 55.028211334423354 AND 55.31767490064505 AND spots.longitude BETWEEN -7.140145500612388 AND -6.633293952512472 AND  <= ?", 10], :order=>"distance ASC"} 

基本上它会返回一些SQL,但没有结果。

这里出了什么问题?即使我尝试了更广泛的东西,比如:

Spot.near([40,0],10000)

我基本上没有得到任何结果......

修改

我可以使用这个(不是很漂亮)添加来执行查询...

q = Spot.near(s1,10)
spots = Spot.select(q[:select]).where(q[:conditions]).order(q[:order])

0 个答案:

没有答案