From a4fbdcdf660fe1f032a332fb51ad37104117b41f Mon Sep 17 00:00:00 2001 From: Oliver George Date: Wed, 22 Jan 2014 12:54:55 +1100 Subject: [PATCH] Fixed #21850 -- Made GeometryField.geodetic case insensitive --- django/contrib/gis/db/models/fields.py | 4 ++-- django/contrib/gis/db/models/query.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/django/contrib/gis/db/models/fields.py b/django/contrib/gis/db/models/fields.py index 2daf08147b..9986fc5036 100644 --- a/django/contrib/gis/db/models/fields.py +++ b/django/contrib/gis/db/models/fields.py @@ -51,7 +51,7 @@ class GeometryField(Field): form_class = forms.GeometryField # Geodetic units. - geodetic_units = ('Decimal Degree', 'degree') + geodetic_units = ('decimal degree', 'degree') description = _("The base GIS field -- maps to the OpenGIS Specification Geometry type.") @@ -147,7 +147,7 @@ class GeometryField(Field): Returns true if this field's SRID corresponds with a coordinate system that uses non-projected units (e.g., latitude/longitude). """ - return self.units_name(connection) in self.geodetic_units + return self.units_name(connection).lower() in self.geodetic_units def get_distance(self, value, lookup_type, connection): """ diff --git a/django/contrib/gis/db/models/query.py b/django/contrib/gis/db/models/query.py index 66b96a0873..b368f425be 100644 --- a/django/contrib/gis/db/models/query.py +++ b/django/contrib/gis/db/models/query.py @@ -646,7 +646,7 @@ class GeoQuerySet(QuerySet): # been transformed via the `transform` GeoQuerySet method. if self.query.transformed_srid: u, unit_name, s = get_srid_info(self.query.transformed_srid, connection) - geodetic = unit_name in geo_field.geodetic_units + geodetic = unit_name.lower() in geo_field.geodetic_units if backend.spatialite and geodetic: raise ValueError('SQLite does not support linear distance calculations on geodetic coordinate systems.')