我试图建立一个基于Django(GeoDjango)和OpenStreetMap的示例网站。到目前为止,我有一个简单的场景:
你知道吗型号.py你知道吗
class Parks(models.Model):
park_name_en = models.CharField(max_length=256)
description = models.TextField()
picture = models.ImageField()
geom = PolygonField()
@property
def picture_url(self):
return self.picture.url
def __unicode__(self):
return self.title
你知道吗视图.py你知道吗
def park_insert(request):
form = ParkForm()
return render(request, 'addpark.html', {'form': form})
你知道吗表单.py你知道吗
class ParkForm(forms.ModelForm):
class Meta:
model = Parks
fields = ('park_name_en', 'description', 'picture',)
geom = forms.PolygonField()
最后但并非最不重要的是模板添加公园.html你知道吗
<html>
<head>
{{ form.media }}
</head>
<body>
<div id="map">
<form enctype="multipart/form-data" method="post" action="">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Submit"/>
</form>
</div>
</body></html>
当我打开模板页面时,除了PolygonField()以文本形式出现外,所有字段都会出现。如何在用户窗体上显示地图(我在管理面板中得到了它,但是我想创建一个窗体来插入新的公园)
你需要描述“形式”型号.py. 你知道吗
你知道吗型号.py你知道吗
从django.contrib.gis公司导入表单
你知道吗视图.py你知道吗
你知道吗表单.py你知道吗
试试看。看这个 https://docs.djangoproject.com/en/2.2/ref/contrib/gis/forms-api/#widget-classes
相关问题 更多 >
编程相关推荐