0
지오 코더를 사용하여 사용자가 입력 한 레스토랑의 주어진 주소에 위도와 경도를 채우려고합니다. 내가 위도와 경도를 포함하는 레스토랑 PARAMS 업데이트되었습니다#show보기의 NoMethodError. 정의되지 않은 메소드 '위도'. 위도와 경도를 가져올 지오 코더
$rails generate latlong migration latitude:float longitude:float
$rake db:migrate
: 나는 실행했습니다
NoMethodError in Restaurants#show
undefined method `latitude' for #<Restaurant:...
: 내 쇼 페이지는 나에게 다음과 같은 오류를주고있다.
쇼 파일의 URL을 참조하는 부분은 다음과 같습니다
여기<p>
<strong>Where's it at?</strong>
<%= image_tag "http://maps.google.com/maps/api/staticmap?size=450x300&sensor=false&zoom=16&markers=#{@restaurant.latitude}%2C#{@restaurant.longitude}" %>
</p>
내 마이그레이션 파일입니다 :
class Latlong < ActiveRecord::Migration
def change
add_column :restaurants, :latitude, :float
add_column :restaurants, :longitude, :float
end
end
내 모델은 다음과 같습니다
class Restaurant < ActiveRecord::Base
mount_uploader :picture, PictureUploader
mount_uploader :menu, MenuUploader
geocoded_by :address
after_validation :geocode
end
고맙습니다 - 레스토랑과 연결된 다른 매개 변수 (주소, 전화 번호 등)를 롤백 할 것인가? 또는 마지막으로 마이그레이션 만합니까? – jpn
잘못된 마이그레이션 (Geo 사용)이 마지막 마이그레이션 인 경우'rake db : rollback STEP = 1'을 실행하여 이전에 수행했던 마지막 마이그레이션 만 취소 할 수 있습니다. – RedZagogulin
또한 지오 코더 젬을 더 잘 이해하려면 [this] (http://railscasts.com/episodes/273-geocoder?view=asciicast)를 읽어보십시오. – RedZagogulin