fix _orig_geometry if not set
This commit is contained in:
parent
768c92cf0f
commit
1c6d8848a9
1 changed files with 8 additions and 2 deletions
|
@ -106,7 +106,10 @@ class GeometryMixin(SerializableMixin):
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def geometry_changed(self):
|
def geometry_changed(self):
|
||||||
if self._orig_geometry is None:
|
try:
|
||||||
|
if self._orig_geometry is None:
|
||||||
|
return True
|
||||||
|
except AttributeError:
|
||||||
return True
|
return True
|
||||||
if self.geometry is self._orig_geometry:
|
if self.geometry is self._orig_geometry:
|
||||||
return False
|
return False
|
||||||
|
@ -121,7 +124,10 @@ class GeometryMixin(SerializableMixin):
|
||||||
def get_changed_geometry(self):
|
def get_changed_geometry(self):
|
||||||
field = self._meta.get_field('geometry')
|
field = self._meta.get_field('geometry')
|
||||||
new_geometry = field.get_final_value(self.geometry)
|
new_geometry = field.get_final_value(self.geometry)
|
||||||
if self._orig_geometry is None:
|
try:
|
||||||
|
if self._orig_geometry is None:
|
||||||
|
return new_geometry
|
||||||
|
except AttributeError:
|
||||||
return new_geometry
|
return new_geometry
|
||||||
difference = new_geometry.symmetric_difference(unwrap_geom(self._orig_geometry))
|
difference = new_geometry.symmetric_difference(unwrap_geom(self._orig_geometry))
|
||||||
if self._meta.get_field('geometry').geomtype in ('polygon', 'multipolygon'):
|
if self._meta.get_field('geometry').geomtype in ('polygon', 'multipolygon'):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue