mirror of https://github.com/django/django.git
Fixed #21850 -- Made GeometryField.geodetic case insensitive
This commit is contained in:
parent
088cb711fe
commit
a4fbdcdf66
|
@ -51,7 +51,7 @@ class GeometryField(Field):
|
||||||
form_class = forms.GeometryField
|
form_class = forms.GeometryField
|
||||||
|
|
||||||
# Geodetic units.
|
# Geodetic units.
|
||||||
geodetic_units = ('Decimal Degree', 'degree')
|
geodetic_units = ('decimal degree', 'degree')
|
||||||
|
|
||||||
description = _("The base GIS field -- maps to the OpenGIS Specification Geometry type.")
|
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
|
Returns true if this field's SRID corresponds with a coordinate
|
||||||
system that uses non-projected units (e.g., latitude/longitude).
|
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):
|
def get_distance(self, value, lookup_type, connection):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -646,7 +646,7 @@ class GeoQuerySet(QuerySet):
|
||||||
# been transformed via the `transform` GeoQuerySet method.
|
# been transformed via the `transform` GeoQuerySet method.
|
||||||
if self.query.transformed_srid:
|
if self.query.transformed_srid:
|
||||||
u, unit_name, s = get_srid_info(self.query.transformed_srid, connection)
|
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:
|
if backend.spatialite and geodetic:
|
||||||
raise ValueError('SQLite does not support linear distance calculations on geodetic coordinate systems.')
|
raise ValueError('SQLite does not support linear distance calculations on geodetic coordinate systems.')
|
||||||
|
|
Loading…
Reference in New Issue