Я реализовал это немного по-другому, и это хорошо работает для моего случая.
В application_controller.rb
у меня есть метод поиска, который вызывает поиск IP Geocoder, напрямую передавая результаты request.remote_ip.
def lookup_ip_location
if Rails.env.development?
Geocoder.search(request.remote_ip).first
else
request.location
end
end
Затем в config/environments/development.rb
я пропатчил вызов remote_ip:
class ActionDispatch::Request
def remote_ip
"71.212.123.5" # ipd home (Denver,CO or Renton,WA)
# "208.87.35.103" # websiteuk.com -- Nassau, Bahamas
# "50.78.167.161" # HOL Seattle, WA
end
end
Я просто жестко закодировал некоторые адреса, но вы могли бы делать здесь все, что захотите.