0

데이터베이스의 개체에 속한 주소를 사용하여 Google지도에서 위치를 표시하는 레일스 블로그를 작성하려고합니다. 나는이 머리에 스크립트, gmaps.js을 사용하고있다 :이 같은 모습을 렌더링 오전gmaps.js 지오 코더가 작동하지 않습니까?

<head> <script src='https://maps.google.com/maps/api/js?sensor=true'></script> </head> 

그리고 부분 : 지금

<script> 
    var map = new GMaps({ 
    div: '#map', 
    lat: -12.043333, 
    lng: -77.028333, 
    scrollwheel: false, 
    draggable: false, 
    clickable: true 
}); 

    GMaps.geocode({ 
    address: "<%= @post.address %>", 
    callback: function(results, status) { 
    if (status == 'OK') { 
     var latlng = results[0].geometry.location; 
     map.setCenter(latlng.lat(), latlng.lng()); 
     map.addMarker({ 
     lat: latlng.lat(), 
     lng: latlng.lng() 
     }); 
    } 
    } 
}); 
    </script> 

부분 표시지도하지만, <%= @post.address %>이지도 컨텍스트 외부에 주소를 표시하더라도 @post와 연결된 위치는 표시되지 않습니다.

아무도 도와 줄 수 있습니까? 비교적 간단한 문제 여야한다고 확신하지만, 그것을 이해할 수는 없습니다. 어떤 도움이라도 대단히 감사 할 것입니다.

미리 감사드립니다.

+0

<% = @ post.address %>가지도 컨텍스트 외부에 주소를 표시하더라도? 또한 screenshot을 공유 할 수 있습니까? – oreoluwa

+0

view.html.erb에서 '.address'가 nil이 아니며 nil이 아닌지 확인하기 위해 테스트했습니다. 그래서 문제는 gmaps 코드에 있다고 생각합니다. 내가 원한다면 그림을 공유 할 수 있지만, 기본 좌표를 표시하는 페이지의지도 일뿐입니다. –

답변

0

주소가 Google의 API로 지오 코딩 될 수 있는지 확인해야한다고 생각합니다. GMaps playground here을 사용하여 주소를 시도 할 수 있습니다. 긴 주소를 사용했을 때 지오 코딩이 아니라는 사실을 발견했지만 짧은 주소를 꽤 빨리 발견했습니다.