我根据http://railscasts.com/episodes/273-geocoder
上的教程实现了地理编码器gem这是房子展示视图模板的一部分
- @house.location.nearbys(20, {:order => :distance, :units => :km}).each do |house|
%li
= link_to house.name, house_path
(#{city.distance.round(2)} KM)
这个展示了其他与KM有距离的房子,所以这很好。
我已经在同一个房子页面上显示了房子所在地区的所有城市,如下所示:
%ul.tags
- @region.cities.each do |city|
%li= link_to city.name, country_region_city_path(@country, @region, city)
问题:如何在@region.cities循环中实现地理编码器宝石,以便访问者可以在房屋页面上看到从房屋到城市有多少KM?
...谢谢REMCO
答案 0 :(得分:1)
地理编码对象应该有distance_from
方法。如果你按照Ryan Bates的教程,@house
应该有这个方法。
检查文档以了解如何使用它: https://github.com/alexreisner/geocoder#location-aware-database-queries
你基本上只需要问@house它与城市的距离(在你的城市循环中)
答案 1 :(得分:0)
是的,我做到了......我没想到的那么多......
- @region.cities.each do |city|
%li
= link_to city.name, country_region_city_path(@country, @region, city)
%li
= @house.location.distance_from([city.latitude,city.longitude])