0

github에서 gmaps4rails 튜토리얼을 따라 왔지만 정보창을 사용자 정의하는 방법을 이해하지 못했습니다. 위치, 이름, 회사 및 설명을 포함한 인턴십 데이터를 수집하는 데이터베이스가 있습니다. 마커는지도의 올바른 위치에 표시되지만 정보 창이 표시 될 때만 정보 또는 이름 또는 회사를 표시 할 수 있습니다.레일 : gmaps4rails를 사용하여 정보창 사용자 정의하기

필자는 레일스를 처음 사용하기 때문에 이러한 모든 속성을 정보 창에 표시 할 수 있도록 업데이트해야 할 항목을 완전히 이해하지 못했습니다.

인턴쉽 모델 : 나는 아래에 내 코드를 부착하고

class Internship < ApplicationRecord 
    geocoded_by :address 
    after_validation :geocode 
end 

인턴쉽보기 :

<script src="//maps.google.com/maps/api/js?key=AIzaSyBj4qLUeW291Z5WvVOwzseQONRBGCnA8ds"></script> 
<script src="//cdn.rawgit.com/mahnunchik/markerclustererplus/master/dist/markerclusterer.min.js"></script> 
<script src='//cdn.rawgit.com/printercu/google-maps-utility-library-v3-read-only/master/infobox/src/infobox_packed.js' type='text/javascript'></script> <!-- only if you need custom infoboxes --> 
<div style='width: 800px;'> 
    <div id="map" style='width: 1100px; height: 600px'></div> 
</div> 
<script type="text/javascript"> 
    handler = Gmaps.build('Google'); 
    handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){ 
    markers = handler.addMarkers(<%=raw @hash.to_json %>); 
    handler.bounds.extendWith(markers); 
    handler.fitMapToBounds(); 
}); 
</script> 

인턴십 컨트롤러 :

def index 
    @internships = Internship.all 
    @hash = Gmaps4rails.build_markers(@internships) do |internship, marker| 
    marker.lat internship.latitude 
    marker.lng internship.longitude 
    marker.infowindow internship.description 
    end 
end 

나는 대단히 감사합니다 얻을 수있는 모든 도움을!

def index 
    @internships = Internship.all 

    @internship_properties = Array.new 
    @internships.each do |internship| 
    @internship_properties.push(internship) 
    end 


@hash = Gmaps4rails.build_markers(@internship_properties) do |internship_prop, marker| 
    concat_info_window = "#{internship_prop.name}, #{internship_prop.address}, #{internship_prop.company}, #{internship_prop.title}, #{internship_prop.date}, #{internship_prop.description}" 
    marker.lat internship_prop.latitude 
    marker.lng internship_prop.longitude 
    marker.infowindow concat_info_window 

end 
end 
:

답변

0

I는 데이터베이스에서 모든 값을 보유하고 정보창에 배열 전달 컨트롤러 배열을 추가 할 필요