gem 'geocoder' を追加
rails g geocoder:config
config/initializers/geocoder.rb内を編集
|config|するのはdeplicateらしいんで、括弧内を編集するだけでよい。(最後のendはいらない)
Geocoder.configure(
# geocoding options
# :timeout => 3, # geocoding service timeout (secs)
# :lookup => :google, # name of geocoding service (symbol)
:language => :ja, # ISO-639 language code
:use_https => false # use HTTPS for lookup requests? (if supported)
# :http_proxy => nil, # HTTP proxy server (user:pass@host:port)
# :https_proxy => nil, # HTTPS proxy server (user:pass@host:port)
# :api_key => nil, # API key for geocoding service
# :cache => nil, # cache object (must respond to #[], #[]=, and #keys)
# :cache_prefix => "geocoder:", # prefix (string) to use for all cache keys
# exceptions that should not be rescued by default
# (if you want to implement custom error handling);
# supports SocketError and TimeoutError
# :always_raise => [],
# calculation options
# :units => :mi, # :km for kilometers or :mi for miles
# :distances => :linear # :spherical or :linear
)
# end
mongoidの場合は、latitude・longitudeは不要で、coordicatesのfieldをArray型で用意する
field :address #住所
field :coordicates, type: Array
# field :latitude, type: Float
# field :longitude, type: Float
geocoded_by :address
reverse_geocoded_by :coordicates
after_validation :geocode
ここまで準備ができたら、なぜかmongoidなのに、rake dbが必要。笑
rake db:mongoid:create_indexes
これで動くようになるはずです。笑