Package: django-geostore
django-geostoreDynamic geographic datastore with Vector Tiles generation from PostGIS and json schema definition and validation.FunctionsGeographic layer managementAdd and manage geographic features on layersManage feature properties with JSON schemaImport and export dataGenerate GeoJSON and MapBox Vector Tile on single or group of layersFull management API availableOptional PGRouting capabilities with plugin django-geostore-routingRequirementsGeneralPython 3.6+Postgresql 10+PostGIS 2.4+Optionnal to use PgRouting functionnalities :PgRouting 2.5+ and django-geostore-routingLibrariesthese are debian packages requiredlibpq-dev   (psycopg2)gettext     (translations)binutils    (django.contrib.gis)libproj-dev (django.contrib.gis)gdal-bin    (django.contrib.gis)recommendedpostgresql-client (if you want to use ./manage.py dbshell command)Installationfrom PYPIpipinstalldjango-geostorefrom GitHubgitclonehttps://github.com/Terralego/django-geostore.gitcddjango-geostore
python3setup.pyinstallin your project settingsINSTALLED_APPS=('geostore',)Developmentwith docker :docker-composebuild
docker-composeup
docker-composerunweb./manage.pytestwith pip :python3.6-mvenvvenvsourceactivatevenv/bin/activate
pipinstall-e.[dev]CHANGELOG1.0.0          (2024-01-12)Add support for django 5.0Add support for python 3.12Improve TileJSON and Tile cache keys0.8.0          (2023-09-08)Works with fiona >= 1.9Add support for django 5.0Add support for python 3.120.7.3          (2023-04-17)Support django 4.2Allow layer access with group limit to superusersDrop django 2.2 and python 3.6 support0.7.2          (2023-03-06)Allow dates and objects in feature properties by using DjangoJSONEncoder0.7.1          (2023-03-03)Set default zoom levels to 0-23Limit Fiona version < 1.9 until fix0.7.0          (2022-12-09)Don't limit psycopg2 version in setup.pyAdd migration check in CI0.6.9          (2022-11-22)Support python 3.10 and django 4.10.6.8          (2022-07-04)Add layer extent endpoint0.6.7          (2022-02-21)Change distance relation calculation with dwithin0.6.6          (2022-02-11)Add relations in vector tiles0.6.5          (2021-10-13)Fix missing migration0.6.4          (2021-10-06)Fix shapefile export0.6.3          (2021-10-05)Improve performances relations0.6.2          (2021-10-04)Fix email link causing scam-alerts in some email clients0.6.1          (2021-04-30)Improve performances relations0.6.0          (2021-04-30)!! WARNING - BREAKING CHANGES !!Add constraint extra geom empty / is_valid. Check that your feature extra geometries are not empty or invalid before using this version0.5.8          (2021-04-30)Add format geojson relations0.5.7          (2020-12-11)Include translation files in pypi releases.0.5.6          (2020-12-11)Fix and include translationsFix template export mail with hyperlink0.5.5          (2020-12-10)Fix templates not included in setup.py sdistFix save generation export file0.5.4          (2020-12-01)Add endpoint to get all distinct values of any layer property0.5.3          (2020-11-16)Use get_username() to keep compatibility with custom User modelRevert shape file url generation0.5.2          (2020-11-06)Add functions to export layers in shape / geojson / kml in async mode with a celery worker. User should have email to receive link to download export.0.5.1          (2020-10-28)BugFix on Polygon Vector tilesImprove documentation0.5.0          (2020-10-27)!! WARNING - BREAKING CHANGES !!Features with empty geometry will not pass anymore Integrity Error Check
Please, check and fix you geostore_feature table first before making migrationsAdd constraint empty geometriesAdd validation of constraints on geometriesgeostore.routing has been extracted to django-geostore-routingadd django-geostore-routing to your project dependenciesadd geostore_routing to you INSTALLED_APPS instead of geostore.routingAdd relation property to handle relations directly in featureForce geometries 2dImprove tile generation0.4.3          (2020-10-09)Fix settings used by renderers0.4.2          (2020-10-06)Fix geometry file labels in feature serializer0.4.1          (2020-10-02)Add KML and GPX renderers0.4.0          (2020-09-02)WARNING Breaking Changes !!to continue to use PGRouting features, please add geostore.routing to INSTALLED_APPSSome changes in routing API response. Now final geometry and full feature segment list are provided by APIConfigurable tolerance for routing topologies (Default value from 0.0001 to 0.00001)HOSTNAME setting is deprecated. Default request HOST is now used to generate absolute full urls for vector tiles.
You can set TERRA_TILES_HOSTNAMES = [HOSTNAME, ] to avoid thisImprovements :Officially support django 3.1Set HOSTNAME or TERRA_TILES_HOSTNAMES is not required anymore. Now full absolute urls are prefixed with current host requestInstalling PGRouting is not required anymore.source / target routing attributes :add indexesHide by default (editable=False)Using JSONField from django.db.modelsUpdating DjangoModelFactory location0.3.19         (2020-06-25)WARNING : Ordering and Searching in feature properties are disabled for layers without schema.OPTIMIZATIONS : Improve API feature by disabling big queries to find layer's propertiesFix duplicated index0.3.18         (2020-06-24)Improve database indexes0.3.17         (2020-03-04)Factorize Feature Extra Geom serializer to be customized directly in ViewsSet0.3.16         (2020-01-27)Manage relations between layers and features (manual / intersections or distances).GeoJson renderer. Now API can render .json or .geojson endpoint (or format=?geojson)Partial properties patch. A patch on feature viewset keep properties not sended.Add Json value search filter in FeatureViewset0.3.15         (2019-12-13)support django rest framework 3.110.3.14         (2019-12-11)Officially support django 3.0Add possibility to modify, create, update, delete extra geometriesAdd field editable to extra layers0.3.13         (2019-12-09)Order extra geometries by layer0.3.12         (2019-12-03)ImprovesImprove documentationFeaturesAbility to define and package extra geometries for features (One to One)0.3.11    (2019-11-05)FixesPrevent token group id decoding error0.3.10         (2019-10-16)NewsAbility to sort API feature results with property key contentFixesAdd missing migration file0.3.9      (2019-10-15)Admin part is removed. Please use your own admin in project.DRF yasg is removed. Configure it in your project if required.Add authentication management on layers0.3.8      (2019-10-11)FixesAdd permission management on FeatureViewset0.3.7      (2019-10-09)FixesFix tilejson's layer attribution and description parsing0.3.6      (2019-10-09)FixesFix tilejson when Layer has no FeatureFix deprecation warning : "ST_Line_Substring signature was deprecated in 2.1.0. Please use ST_LineSubstring"Fix tile generation when no feature is present in the layerFix permission management of layers0.3.5      (2019-10-03)NewsAdd a method to get json schema property type by its nameFixesFix bug with shapefile export on geometry defined layer.Fix group's tiles URLs in tilejsonFix tilejson when Layer has no FeatureReturn a tilejson even if it has no feature0.3.4      (2019-09-26)Fixesintegrate test/factories in packaging0.3.3      (2019-09-25)Breaking Changes with frontkey to access tilejson is changed from 'layer_tilejson' and 'group_tilejson' to 'tilejson' in both cases.FixFix migration file that prevent old terracommon app migration0.3.2      (2019-09-24)FixFix migration file that prevent old terracommon app migration0.3.1      (2019-09-11)Breaking ChangesApp name move from terra to geostore. Structure is the same, so backup and restore your data0.3.0      (2019-09-09)First public tagTerra app extracted from terracommon.terra