summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2017-03-17 09:57:42 -0400
committerTim Graham <timograham@gmail.com>2017-03-17 12:59:10 -0400
commitc548dba428d8eed290846235d1aef4c92c0d7b60 (patch)
tree581ad9c70eb452aaeae898c94a1cb52a36abd47d
parent926b4427d252902d15b24fc40c71ba5d70c87089 (diff)
[1.11.x] Fixed #27939 -- Updated OpenLayersWidget.map_srid for OpenLayers 3.
Regression in 2ebfda38e65177dfc7d6e90457ffa4a0fa2796f0 (refs #25004). Backport of 93eca976c15dceaf445ab4739bb2f635a2021db0 from master
-rw-r--r--django/contrib/gis/forms/widgets.py2
-rw-r--r--tests/gis_tests/test_geoforms.py8
2 files changed, 6 insertions, 4 deletions
diff --git a/django/contrib/gis/forms/widgets.py b/django/contrib/gis/forms/widgets.py
index e331e1844d..1a03747beb 100644
--- a/django/contrib/gis/forms/widgets.py
+++ b/django/contrib/gis/forms/widgets.py
@@ -78,6 +78,7 @@ class BaseGeometryWidget(Widget):
class OpenLayersWidget(BaseGeometryWidget):
template_name = 'gis/openlayers.html'
+ map_srid = 3857
class Media:
css = {
@@ -102,7 +103,6 @@ class OSMWidget(OpenLayersWidget):
template_name = 'gis/openlayers-osm.html'
default_lon = 5
default_lat = 47
- map_srid = 3857
def __init__(self, attrs=None):
super(OSMWidget, self).__init__()
diff --git a/tests/gis_tests/test_geoforms.py b/tests/gis_tests/test_geoforms.py
index 27b80ce9b2..b941e94e42 100644
--- a/tests/gis_tests/test_geoforms.py
+++ b/tests/gis_tests/test_geoforms.py
@@ -116,7 +116,7 @@ class GeometryFieldTest(SimpleTestCase):
# ordering of the rendered dictionary.
pt1_serialized = re.search(r'<textarea [^>]*>({[^<]+})<', output).groups()[0]
pt1_json = json.loads(pt1_serialized.replace('&quot;', '"'))
- self.assertEqual(pt1_json, {'coordinates': [7.3, 44.0], 'type': 'Point'})
+ self.assertEqual(pt1_json, {'coordinates': [812632.2827908975, 5465442.183322753], 'type': 'Point'})
self.assertInHTML(
'<textarea id="id_pt2" class="vSerializedField required" cols="150"'
@@ -200,7 +200,7 @@ class SpecializedFieldTest(SimpleTestCase):
self.assertTrue(form_instance.is_valid())
rendered = form_instance.as_p()
self.assertIn('new MapWidget(options);', rendered)
- self.assertIn('map_srid: 4326,', rendered)
+ self.assertIn('map_srid: 3857,', rendered)
self.assertIn('gis/js/OLMapWidget.js', str(form_instance.media))
def assertTextarea(self, geom, rendered):
@@ -208,7 +208,9 @@ class SpecializedFieldTest(SimpleTestCase):
self.assertIn('<textarea ', rendered)
self.assertIn('required', rendered)
- self.assertIn(escape(geom.json), rendered)
+ ogr = geom.ogr
+ ogr.transform(3857)
+ self.assertIn(escape(ogr.json), rendered)
# map_srid in operlayers.html template must not be localized.
@override_settings(USE_L10N=True, USE_THOUSAND_SEPARATOR=True)