Commit 9176fa70 authored by Claude Paroz's avatar Claude Paroz
Browse files

[1.5.x] Fixed geojson detection with Spatialite

This is a partial backport of commit eb9430fc. Without this,
geojson support is never detected with Spatialite.
Refs #20252 and #19028.
parent 6e3b8023
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -10,6 +10,8 @@ from django.core.exceptions import ImproperlyConfigured
from django.db.backends.sqlite3.base import DatabaseOperations
from django.db.utils import DatabaseError
from django.utils import six
from django.utils.functional import cached_property


class SpatiaLiteOperator(SpatialOperation):
    "For SpatiaLite operators (e.g. `&&`, `~`)."
@@ -146,8 +148,10 @@ class SpatiaLiteOperations(DatabaseOperations, BaseSpatialOperations):
            except DatabaseError:
                # we are using < 2.4.0-RC4
                pass
        if version >= (3, 0, 0):
            self.geojson = 'AsGeoJSON'

    @cached_property
    def geojson(self):
        return 'AsGeoJSON' if self.spatialite_version_tuple()[1:] >= (3, 0, 0) else None

    def check_aggregate_support(self, aggregate):
        """