我有一個包含幾個字段GeoDjango內置的查詢集,但希望只使用user_name
和location
(點場),我想在谷歌地圖API 3.如何將Geodjango與Google Maps API 3集成?
多多包涵,因爲我不知道一個標記使用Javascript和我有一系列的問題。
以此爲概念集思廣益對於一個新手來說:
我的SO搜索表明,我需要序列化對象的查詢集來 JSON。我使用內置的序列化模塊將其轉換爲JSON。
我認爲JSON對象轉換爲views.py
(讓我們 稱之爲json_data
)。這些JSON對象是否存儲在PostGIS數據庫中?這不是多餘的嗎?此外,如何在
map.js
(Google地圖 API 3)javascript文件中引用它們?
我想(導入?鏈接?)JSON對象將它們顯示爲位置標記。我想知道如何聲明和迭代javascript變量
locations
。
For var(i=0;i< locations.length;i++){[
[json_data.user_name, json_data.point],
]
var map = new google.maps.Map(document.getElementById('map'), {
center: new google.maps.LatLng(49.279504, -123.1162),
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var infowindow = new google.maps.InfoWindow();
var marker, i;
for (i = 0; i < locations.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(locations[i][1], locations[i][2]),
map: map,
icon: 'http://maps.google.com/mapfiles/ms/icons/blue-dot.png'
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent(locations[i][0]);
infowindow.open(map, marker);
}
})(marker, i));
}
指導我,如果我去不必要的迂迴的方式做一個簡單的任務。
我對_geodjango_不熟悉,但也許[this](https://stackoverflow.com/q/23077089/863110)問題會幫助你?它演示瞭如何將geodjango集成到JavaScript文件中。一旦你將成功地在文件中呈現一個JavaScript數組,它將很容易與地圖集成。 –