summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_warehouse/models.py')
-rw-r--r--archaeological_warehouse/models.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py
index 31701dbf9..1804d70d6 100644
--- a/archaeological_warehouse/models.py
+++ b/archaeological_warehouse/models.py
@@ -355,9 +355,14 @@ class Container(LightHistorizedItem, ImageModel):
break
else:
return
- obj, created = ContainerLocalisation.objects.update_or_create(
- container=self, division=division_link,
- defaults={'reference': value})
+ dct = {'container': self, 'division': division_link}
+ if not value:
+ if ContainerLocalisation.objects.filter(**dct).count():
+ c = ContainerLocalisation.objects.filter(**dct).all()[0]
+ c.delete()
+ return
+ dct['defaults'] = {'reference': value}
+ obj, created = ContainerLocalisation.objects.update_or_create(**dct)
return obj
@property