Javascript 如何使用gmaps4rails将多个映射添加到rails应用程序的不同页面中?

Javascript 如何使用gmaps4rails将多个映射添加到rails应用程序的不同页面中?,javascript,ruby-on-rails,ruby,ruby-on-rails-4,gmaps4rails,Javascript,Ruby On Rails,Ruby,Ruby On Rails 4,Gmaps4rails,我尝试了多种方法,试图让地图显示在我家的index.html.erb和locations的index.html.erb上,但似乎没有任何方法可以正常工作。我的总体目标是能够编辑“我的位置”页面中的内容,但只显示内容而不编辑主页上的任何内容。感谢您的帮助。谢谢大家! my current home index.html.erb注意:我只显示javascript: <script type="text/javascript"> $(function(handler) { ha

我尝试了多种方法,试图让地图显示在我家的index.html.erb和locations的index.html.erb上,但似乎没有任何方法可以正常工作。我的总体目标是能够编辑“我的位置”页面中的内容,但只显示内容而不编辑主页上的任何内容。感谢您的帮助。谢谢大家!

my current home index.html.erb注意:我只显示javascript:

<script type="text/javascript">
  $(function(handler) {
    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>
对于这两个控制器,我的索引方法中都有:


顺便说一句,我有一个模型位置,它提供了lat、long、summary和title。

gmaps4rails不适合某些gem,我不得不删除一些来停止存储空字符串。之后,我还将主视图中的处理程序更改为handler2,以使其工作。谢谢你

你有什么问题?有错误吗?代码工作请参见:因此您必须在此处提供更多信息。我怀疑你没有坐标当我只有位置控制器时,地图工作得很好,但后来我添加了一个主控制器,并试图在其中制作第二张地图,但首先它不再存储位置,它只存储空格,而列出新添加的位置,它只列出空格,而且地图也没有显示在主页上。有js错误吗?这是不可能猜出什么是错误的没有js错误。它可能是您前面提到的nil坐标,因为当我添加新位置时,它会在数据库中存储空格。我在主控制器和位置控制器中使用相同的变量。我试图将两个类中的内部:{id:'map'}更改为不同,但它仍然不会在主页中显示地图,也无法添加位置。如果放置地图,它应该与dom中的id匹配。否则,您将遇到css问题
<script type="text/javascript">
  $(function(handler) {
    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
    @locations = Location.all
    @hash = Gmaps4rails.build_markers(@locations) do |location, marker|
        marker.lat location.latitude
        marker.lng location.longitude
        marker.infowindow location.summary
       marker.json({title: location.title })
       end
  end