0

現在、Google マップに現在表示されている投稿へのハイパーリンクを作成しようとしています。マップには、緯度と経度に基づいて各投稿が表示されます。以下のコードは各投稿のタイトルにリンクしていますが、問題は、タイトルが大文字であるか、スペースが含まれていることが多いことです。ここに私が持っているものがあります:

`

    <div class="court-listing" id="map-canvas"></div>

    <script>
        function initialize() {
            var map = new google.maps.Map(document.getElementById('map-canvas'), {
      center: {lat: 40.674, lng: -73.945},
      zoom: 12,
      styles: [
        {elementType: 'geometry', stylers: [{color: '#242f3e'}]},
        {elementType: 'labels.text.stroke', stylers: [{color: '#242f3e'}]},
        {elementType: 'labels.text.fill', stylers: [{color: '#746855'}]},
        {
          featureType: 'administrative.locality',
          elementType: 'labels.text.fill',
          stylers: [{color: '#d59563'}]
        },
        {
          featureType: 'poi',
          elementType: 'labels.text.fill',
          stylers: [{color: '#d59563'}]
        },
        {
          featureType: 'poi.park',
          elementType: 'geometry',
          stylers: [{color: '#263c3f'}]
        },
        {
          featureType: 'poi.park',
          elementType: 'labels.text.fill',
          stylers: [{color: '#6b9a76'}]
        },
        {
          featureType: 'road',
          elementType: 'geometry',
          stylers: [{color: '#38414e'}]
        },
        {
          featureType: 'road',
          elementType: 'geometry.stroke',
          stylers: [{color: '#212a37'}]
        },
        {
          featureType: 'road',
          elementType: 'labels.text.fill',
          stylers: [{color: '#9ca5b3'}]
        },
        {
          featureType: 'road.highway',
          elementType: 'geometry',
          stylers: [{color: '#746855'}]
        },
        {
          featureType: 'road.highway',
          elementType: 'geometry.stroke',
          stylers: [{color: '#1f2835'}]
        },
        {
          featureType: 'road.highway',
          elementType: 'labels.text.fill',
          stylers: [{color: '#f3d19c'}]
        },
        {
          featureType: 'transit',
          elementType: 'geometry',
          stylers: [{color: '#2f3948'}]
        },
        {
          featureType: 'transit.station',
          elementType: 'labels.text.fill',
          stylers: [{color: '#d59563'}]
        },
        {
          featureType: 'water',
          elementType: 'geometry',
          stylers: [{color: '#17263c'}]
        },
        {
          featureType: 'water',
          elementType: 'labels.text.fill',
          stylers: [{color: '#515c6d'}]
        },
        {
          featureType: 'water',
          elementType: 'labels.text.stroke',
          stylers: [{color: '#17263c'}]
        }
      ]
    });
            var bounds = new google.maps.LatLngBounds();
            function addMarker(lat, lng, title) {
                var location = new google.maps.LatLng(lat, lng);
                var marker = new google.maps.Marker({
                    position: location,
                    map: map,
                    title: title
                });
            var infowindow = new google.maps.InfoWindow({
      content: '<a href="' + marker.getTitle() + '">' + marker.getTitle() + '</a>'
    });
    google.maps.event.addListener(marker, 'click', function() {
      infowindow.open(map, marker);
    });
                bounds.extend(location);
            }
             {% for obj in object_list %}
                 addMarker({{ obj.location.latitude }}, {{ obj.location.longitude }}, "{{ obj.title }}");

            {% endfor %}

            map.fitBounds(bounds);

        }
        google.maps.event.addDomListener(window, 'load', initialize);
    </script> `

これは、各投稿にリンクするためにモデルで定義したものです。

{{ obj.get_absolute_url }}

これを infoWindow に含める簡単な方法はありますか? どうにかしてマーカー配列に収まる必要があると思いますが、うまく追加できませんでした。

前もってお詫び申し上げます。私は Django の初心者です...これは、Rails の方がはるかに簡単なようです。

どんなヒントも素晴らしいでしょう。

4

0 に答える 0