Я вычисляю расстояние между сайтом и магазинами, используя драгоценный камень Haversine.
Поскольку широта и долгота магазина могут быть nil
, я хочу проверить, соответствует ли это значение вычисленному значению.в моем хеше для возврата должна быть строка, подобная этой: «без точного адреса».
Я написал этот метод, и он работает отлично, все еще только точка nil
address:
require 'haversine'
class Api::V1::Angular::SitesController < Api::ApplicationController
# GET /api/v1/angular/sites/:id/distances
def stores_distances
site = Site.find params[ :id ]
distances = Store.current.map do |store|
{
name: store.name,
value: Haversine.distance(
site.address.latitude,
site.address.longitude,
store.address.latitude,
store.address.longitude
).round(2)
}
end
render json: {
distances: distances.to_json
}
end
end