簡體   English   中英

使用地理編碼器按到城市的距離訂購信息

[英]Ordering posts by distance to city using geocoder

我正在嘗試通過地理編碼器將帖子與當前用戶的位置保持多近的順序進行排序。 這是控制器:

def top
@city = request.location.city
@closepost = Post.near(@city, order: :distance)
end

這是視圖:

<% @closepost.each do |post| %>
 <%= post.title %>
<% end %>

我收到此錯誤:

undefined method `to_f' for {:order=>:distance}:Hash

在控制器中,您定義:

@closepost

鑒於您正在致電:

@closeposts

並且您對.each的變量調用.each

更新

irb> a=Geokit::Geocoders::GoogleGeocoder.geocode '140 Market St, San Francisco, CA' 
irb> a.ll 
=> 37.79363,-122.396116

@closeposts = Post.within(5, :origin => @city.ll).order('distance DESC') 

與地理編碼

@closeposts = Post.near('dublin', 50, :order => :distance)

您錯過了距離參數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM