Fixed #19063 -- Fixed version parameter of gml GeoQuerySet method

Thanks lmisek@go2.pl for the report.
This commit is contained in:
Claude Paroz 2012-10-03 13:32:26 +02:00
parent c76877c1d2
commit d25a599dca
2 changed files with 5 additions and 2 deletions

View File

@ -194,9 +194,9 @@ class GeoQuerySet(QuerySet):
# PostGIS AsGML() aggregate function parameter order depends on the
# version -- uggh.
if backend.spatial_version > (1, 3, 1):
procedure_fmt = '%(version)s,%(geo_col)s,%(precision)s'
s['procedure_fmt'] = '%(version)s,%(geo_col)s,%(precision)s'
else:
procedure_fmt = '%(geo_col)s,%(precision)s,%(version)s'
s['procedure_fmt'] = '%(geo_col)s,%(precision)s,%(version)s'
s['procedure_args'] = {'precision' : precision, 'version' : version}
return self._spatial_attribute('gml', s, **kwargs)

View File

@ -529,6 +529,9 @@ class GeoQuerySetTest(TestCase):
for ptown in [ptown1, ptown2]:
self.assertTrue(gml_regex.match(ptown.gml))
if postgis:
self.assertIn('<gml:pos srsDimension="2">', City.objects.gml(version=3).get(name='Pueblo').gml)
def test_kml(self):
"Testing KML output from the database using GeoQuerySet.kml()."
# Only PostGIS and Spatialite (>=2.4.0-RC4) support KML serialization