Я использую гем GeoCoder для поиска значений lat и long для локаций, и кажется, что он отлично работает в коде rails.Однако, чтобы получить каждое местоположение lat / long будет длинным и многодневным.
Просматривая документы, которые я видел, я могу использовать rake geocode:all CLASS=Location SLEEP=0.25 BATCH=100
для обработки пакетов по 100 штук.
При этом я сталкиваюсь со следующей ошибкой ...
NoMethodError: undefined method `address=' for #<Location:0x00007f9cf3d8daf0>
Did you mean? address1=
address2=
address3=
address4=
address
address4
address2
address1
address3
address3?
address2?
address1?
address4?
Следуя документации, я настроил адресный метод, как показано в модели Location ниже.
class Location < ApplicationRecord
geocoded_by :address
reverse_geocoded_by :latitude, :longitude
after_validation :geocode, :reverse_geocode
# searchkick locations: [:location]
def address
[name, postcode].compact.join(", ")
end
# def search_data
# attributes.merge location: { lat: latitude, lon: longitude }
# end
end
Я просмотрел StackOverflow и потратил довольно много времени на Google, пытаясь разобраться, что вызываетэтот вопрос, но не могу на всю жизнь заставить его работать.
У кого-нибудь есть какие-нибудь указатели, или можно увидеть, где я иду не так?
Спасибо