Tag: rails geocoder

Ruby Geocoder gem找到邮政编码

我正在使用ruby geocoder gem按位置搜索。 我想将搜索限制在已正式启动的位置。 如果有人通过zip搜索,使用正则表达式很容易。 但如果有人按城市搜索,我需要将城市转换为邮政编码,检查我的邮政编码表,如果是肯定的,则返回搜索结果。 地理编码器api有一个反向地理编码部分: reverse_geocoded_by :latitude, :longitude do |obj,results| if geo = results.first obj.city = geo.city obj.zipcode = geo.postal_code obj.country = geo.country_code end end after_validation :reverse_geocode 这显然是为了在模型中使用而构建的。 但我试图在我的控制器中使用它,但是obj.zipcode根本不起作用。 Geocoder.search(’san jose,ca’)似乎回归了我所需要的,我只是不知道如何去做。 这是我在的地方: if params[:search].present? # coords = Geocoder.coordinates(params[:search]) zip = Geocoder.search(params[:search]) if Zip.where(:zip => (params[zip.zipcode]), :launch => true).exists? addresses = Address.near(params[:search], 25, :order […]

Geocoder Gem – 获取request.location.country的“保留”(即使在Local!中)

我需要能够在本地查看地理编码器国家和城市的输出,以获得“Hi,Yu在{country detected}中”的消息。 为了能够在本地/开发模式下使用地理编码器,我已经遵循了一些SO建议并放置: 在config / environment / development.rb中 class ActionDispatch::Request def remote_ip “84.34.156.155” # fake ip for example end end 并在application_controller中 def lookup_ip_location if Rails.env.development? Geocoder.search(request.remote_ip).first else request.location end end 在我的主页上,如果我把: 您在中 它在本地显示“你在保留”。 它认为ip = 00.00.00并且构建地理编码器以返回“在那种情况下保留”。 很公平,如果我把:,它然后工作,并给我我已放入config / environment / develomment.rb的IP:84.34.156.155 所以我试图把“你在”,但它不起作用,并给我错误: undefined method `country’ for 84.34.156.155″:String 如何在本地显示我设置的IP位置的国家/地区! 谢谢 它在生产中工作正常(它显示’你在法国’!)但不在本地! 我能怎么做? 我可以在本地工作和检查东西,而不是每次都要部署以检查它是否有效。

TrueClass的未定义方法`model_name’:DeviseConfirmations的类(Rails 4,设计)

在我的Rails应用程序中,为了在用户注册时将用户国家(使用Geocoder gem)保存到User表中,并使用另一个SO问题 ,我在控制器/ confirmations_controller.rb中更改了一些内容但是我遇到了严重的错误我不明白也不设法解决: def after_sign_up_path_for(resource) if Devise.allow_insecure_sign_in_after_confirmation resource.update(user_country: request.location.country) after_sign_in_path_for(resource) else resource.update(user_country: request.location.country) root_path end end 奇怪的是,用户在我的本地数据库中保存了一切正常(包括我想要的用户国家)。 但是当我得到一个包含以下错误消息的错误页面时,必须发生一些事情: undefined method `model_name’ for TrueClass:Class 整个错误日志: (0.8ms) COMMIT (0.5ms) BEGIN SQL (1.3ms) UPDATE “users” SET “remember_created_at” = $1, “updated_at” = $2 WHERE “users”.”id” = 427 [[“remember_created_at”, 2014-06-24 10:52:32 UTC], [“updated_at”, 2014-06-24 12:52:32 +0200]] (0.7ms) COMMIT (0.4ms) […]

在Google地图上动态显示标记-Rails 3.2

我有一个工作代码,使用geocoder器在谷歌地图上显示多个标记,例如@nearbys = Place.near(“#{params[:address]}”, 5,:order => “distance”,:units => :km) @nearbys.first(5)并使用以下代码显示标记 function initialize() { var map; var bounds = new google.maps.LatLngBounds(); var mapOptions = { mapTypeId: ‘roadmap’ }; // Display a map on the page map = new google.maps.Map(document.getElementById(“map-canvas-guest”), mapOptions); map.setTilt(45); // adding Multiple Markers from ruby object var markers = [ [”, ”,”], [”, ”,”], [”, […]