0
我有一個城市白名單。我有一位用戶指定了他們的位置。我想知道哪些城市位於用戶的半徑範圍內。在Ruby中,如何查找城市白名單範圍內的城市?
爲了獲取這些信息,我需要採取哪些步驟?也許有一些地理編碼寶石可以幫助完成這項任務?
我有一個城市白名單。我有一位用戶指定了他們的位置。我想知道哪些城市位於用戶的半徑範圍內。在Ruby中,如何查找城市白名單範圍內的城市?
爲了獲取這些信息,我需要採取哪些步驟?也許有一些地理編碼寶石可以幫助完成這項任務?
退房geocoder寶石。它會爲您提供distance calculation methods。
下面是一個簡單的例子來告訴你如何進行:
require 'geocoder'
cities = %w(Paris Tokyo Berlin New-York)
geocoded_cities = cities.map{ |city| Geocoder.search(city).first }
user_city = "London"
geocoded_user_city = Geocoder.search(user_city).first
close_cities = geocoded_cities.select do |city|
Geocoder::Calculations.distance_between(city.coordinates, geocoded_user_city.coordinates, { units: :mi }) < 800
end
這有助於,謝謝! – Andrew