Rails地理编码器找到不同半径范围内的位置

时间:2016-06-28 15:23:33

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

我想为用户找到贴近的位置。 用户表 拥有纬度经度 地理位置表 拥有纬度经度。此外,位置还具有 radius 属性。我想为用户找到位置,即用户位于特定半径范围内的这些位置。我不能Location.near([user.latitude, user.longitude], radius),因为所有位置都有不同的半径。

我也不能Location.all.to_a.select {|l| u.distance_from([l. latitude, l. longitude]) < l.radius},因为它效率低下。它必须放在主页面中。现在我有大约1k个位置和1k用户。 我怎样才能做到这一点?我使用宝石地理编码器,但我可以使用别的东西。

0 个答案:

没有答案