число не является функцией в gmaps4rails v2 с ломаной линией

Я пытаюсь использовать полилинию с gmaps4rails 2 и не могу понять, в чем ошибка...

когда я жестко кодирую свою полилинию, карта отображается, как и ожидалось. Однако, когда я получаю данные от контроллера, я получаю «Uncaught TypeError: число не является функцией».

следующий код с жестко заданной ломаной линией работает

Посмотреть

<script>
 $('#myModal2').on('shown.bs.modal', function (e) { 
  handler = Gmaps.build('Google');
  handler.buildMap({ provider: {}, internal: {id: 'map2'}}, function(){    
    polyline = [{"lat":49.9574400,"lng":-123.1201800}, {"lat":49.9465300,"lng":-123.0553700},{"lat":49.9598300,"lng":-123.0475400},{"lat":49.9750500,"lng":-123.0427700}];    
    handler.addPolyline(polyline);
    handler.bounds.extend(polyline[0]);
    handler.bounds.extend(polyline[ polyline.length - 1]);
    handler.fitMapToBounds();
    handler.getMap().setZoom(12);
  });
  });
</script>

но это не

<script>
$('#myModal2').on('shown.bs.modal', function (e) { 
  handler = Gmaps.build('Google');
  handler.buildMap({ provider: {}, internal: {id: 'map2'}}, function(){       
    polyline = <%=raw @hashroute.to_json %>;
    handler.addPolyline(polyline);
    handler.bounds.extend(polyline[0]);
    handler.bounds.extend(polyline[ polyline.length - 1]);
    handler.fitMapToBounds();
    handler.getMap().setZoom(12);
  });
  });
</script>

контроллер

def show
     @hashroute =[]
     @list.routes.each do |route|
      @hashroute << { :lat => route.from_lat, :long => route.from_long}
      @hashroute << { :lat => route.to_lat, :long => route.to_long}
     end

 respond_to do |format|
          format.html {render :show}
          format.json { head :ok}
        end

end

@hashroute.to_json заполнен правильно, а полилиния в консоли выглядит так же, как жестко закодированная версия

код консоли, который работает введите здесь описание изображения

когда это не работает введите здесь описание изображения

Есть идеи?


person user7330    schedule 22.05.2014    source источник
comment
вы смотрели на то, что на самом деле отображается? явно проблемы с рендерингом...   -  person Luke    schedule 23.05.2014
comment
Кстати, если вы не используете var перед своими переменными, они будут глобальными...   -  person Luke    schedule 23.05.2014
comment
спасибо ... провел часы, сравнивая 2 и не увидел никаких различий :-)   -  person user7330    schedule 23.05.2014


Ответы (1)


Чтобы закрыть этот вопрос, который остается открытым без причины, давайте поместим здесь мой ответный комментарий:

Вы должны следовать правильному именованию, замените long на lng

person apneadiving    schedule 03.06.2014