繁体   English   中英

Rails:使用gmaps4rails自定义信息窗口

[英]Rails: Customizing an infowindow using gmaps4rails

我一直在关注github上的gmaps4rails教程,但不了解如何自定义信息窗口。 我有一个收集实习数据的数据库,其中包括位置,姓名,公司和描述。 标记会显示在地图上的正确位置,但是我只能在信息窗口中显示所有名称时,才能显示名称或说明或公司。

我是Rails的新手,并且不完全了解我需要更新什么才能使所有这些属性都出现在信息窗口中。 我在下面附上我的代码:

实习模式:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM