我有两个模型,一个显示标记(PointField),另一个生成PolygonFields。
在我看来,我可以完美地显示地图上的所有数据。 但是,我想在创建新几何体时显示相同的数据。问题是,如何将标记和polygonField数据覆盖为表单中的图层。
模型
class MyPolygon(gis_models.Model):
geom = gis_models.PolygonField()
objects = gis_models.GeoManager()
class MyPoints(gis_models.Model):
geom = gis_models.PolygonField()
objects = gis_models.GeoManager()
视图
class PolygonCreateView(CreateView):
form_class = PolygonForm
template_name = 'applications/create_polygon.html'
success_url = '/applications/polygon'
def view_polygon(request):
polygons= ReserveAirspace.objects.all()
return render(request, 'applications/polygons.html',{'polygons':polygons})
同样适用于这些要点。
HTML
{{form.geom}}
如何将所有现有的多边形和点添加到模板???中的表单字段
答案 0 :(得分:0)
您需要使用JavaScript将几何图形添加到传单地图中。您可以将其作为geojson从其他视图返回,也可以像这样扩展CreateView:
class PolygonCreateView(CreateView):
# ....
def all_polygons(self):
return MyPolygon.objects.all()
并使用{{ view.all_polygons }}
从您的模板访问它们。