Geocode Ruby Gem を使用して、ユーザーが入力した zip/country を適切にフォーマットされた場所 (例: Los Angeles、CA、USA) に変換しました。また、将来的にはジオコーディングを使用したいと考えています (フォーマットをきれいにするのになぜそんなに手間がかかるのか疑問に思われる場合に備えて)
列「アドレス」をユーザー データベースに移行しました。現在、ジオコーディングに行き詰まっており、ユーザーデータベースで列を移行するのではなく、データベースに場所フォルダーを作成しなかったためかどうかわかりません。
ルーティング エラーが発生しました: undefined method `geocoded_by' for #
全くの初心者なので意味不明だったらすみません。
class Location < ActiveRecord::Base
attr_accessible :address, :latitude, :longitude
geocoded_by :full_address
after_validation :geocode, :if => :address_changed?
end
これが私のコントローラーです:
def full_address
@user = User.find(params[:address])
Geocode.serach("@user")
end
location.rb を次のように変更します。
class Location < ActiveRecord::Base
extend ::Geocoder::Model::ActiveRecord
attr_accessible :address, :latitude, :longitude
geocoded_by :address_for_geocode
reverse_geocoded_by :latitude, :longitude
end
次のエラーが発生します。
Routing Error
uninitialized constant Location::Geocoder
Try running rake routes for more information on available routes.