说Django的wfs2.0(公开GeoDjango模型字段)

django-gisserver的Python项目详细描述


DocumentationTravisPyPIMPL LicenseCoverage

django gisserver公司

说Django的wfs2.0公开地理数据。在

特点

  • WFS 2.0基本实现。在
  • GML 3.2输出。在
  • 标准和空间滤波(FES 2.0)
  • GeoJSON和CSV导出格式。在
  • 可扩展的视图/操作。在
  • 使用GeoDjango查询进行过滤。在
  • 大型数据集的流式响应。在

文件

有关详细信息,请参阅:https://django-gisserver.readthedocs.io/

快速启动

在项目中安装模块:

pip install django-gisserver

将其添加到INSTALLED_APPS

^{pr2}$

创建一个显示GeoDjango字段的模型:

fromdjango.contrib.gis.db.modelsimportPointFieldfromdjango.dbimportmodelsclassRestaurant(models.Model):name=models.CharField(max_length=200)location=PointField(null=True)def__str__(self):returnself.name

编写将此模型公开为WFS功能的视图:

fromgisserver.featuresimportFeatureType,ServiceDescriptionfromgisserver.geometriesimportCRS,WGS84fromgisserver.viewsimportWFSViewfrom.modelsimportRestaurantRD_NEW=CRS.from_srid(28992)classPlacesWFSView(WFSView):"""An simple view that uses the WFSView against our test model."""xml_namespace="http://example.org/gisserver"# The service metadataservice_description=ServiceDescription(title="Places",abstract="Unittesting",keywords=["django-gisserver"],provider_name="Django",provider_site="https://www.example.com/",contact_person="django-gisserver",)# Each Django model is listed here as a feature.feature_types=[FeatureType(Restaurant.objects.all(),fields="__all__",other_crs=[RD_NEW]),]

在URLConf中使用该视图:

fromdjango.urlsimportpathfrom.importviewsurlpatterns=[path("/wfs/places/",views.PlacesWFSView.as_view()),]

现在可以在GIS应用程序中使用http://localhost:8000/wfs/places/。 它将执行以下请求:

通过将&OUTPUTFORMAT=geojson或{}添加到GetFeature请求,将返回GeoJSON和CSV输出。 CSV输出的页面大小不受限制,因为它的性能非常好。在

为什么共享此代码

阿姆斯特丹市政府的“datapunt”团队为该市开发软件。 这些软件的大部分都是以开源的形式发布的,这样其他城市, 组织和公民可以利用该软件作为开发的基础和灵感 类似的软件本身。阿姆斯特丹市政府认为重要的是 用公款开发的软件也可以公开使用。在

阿姆斯特丹的工具最初是由阿姆斯特丹开发的 在这个项目中创建的概念可以在任何城市使用。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java没有到主机连接的路由(2)(Errno::EHOSTUNREACH)   java如何在Selenium Webdriver中阻止广告   java如何检查矩形棱柱体是否完全嵌套在另一个棱柱体中,包括旋转   java更新场景和线程   java使用log4j将日期添加到日志文件名   java在@Rule运行之前,如何使用Guice在Junit测试用例中注入依赖项?   java从Apache的POI工作簿获取InputStream   java openFileOutput:如何在/data/data…外部创建文件。。。。路径   java在运行时将war部署到OSGI中   java SimpleDataFormat解析返回错误的值   在java中通过UDP发送C++结构   java如何将写入文件的数据通过管道传输到调用应用程序?   JAVAlang.RuntimeException:注册MBean、com时发生异常。刻度7。卡桑德拉。佩洛普斯。pool:type=PooledNodemy\u keyspacelocalhost   java字体搭配pdfbox和boxable