我是地理信息系统的新手,为了学习,我开始用GeoDjango构建一个简单的web应用程序。我正在使用django-leaflet。由于我的知识非常有限,所以我面临着许多挑战。我正试着在我的地图上放一个特定的标记作为测试
models.py
from django.db import models
from django.contrib.gis.geos import point
from django.contrib.gis.db import models as gismodels
class Points(gismodels.Model):
data_lat = 44.915223
data_long = -93.209741
@property
def geom(self):
return point(self.data_lat, self.data_long, srid=4326)
def __unicode__(self):
return self.titleabout.html
<body>
<h1> Map </h1>
{% leaflet_map "main" callback="main_map_init" %}
<script type="text/javascript">
function main_map_init (map, options){
var dataurl = '{% url "data" %}';
$.getJSON('dataurl', function(data) {
L.geoJson(data).addTo(map);
})
}
</script>
</body>我遇到了数据没有传递到map的问题。如果有人能给我指个方向就好了。
发布于 2014-08-05 16:45:56
在about.html中,正确的代码应该是(假设数据是动态创建的geojson的链接
var dataurl = '{% url "data" %}';
$.getJSON(dataurl, function(data) {
L.geoJson(data).addTo(map);
})我建议你参考一下http://leafletjs.com/examples/geojson.html,并尝试在html页面中手动创建一个地图,看看它是如何工作的,然后你就可以用Python动态添加内容了。
https://stackoverflow.com/questions/25125526
复制相似问题