From 9fa2dfce8cdebc07043ab3450ab4fc27ef9e9a02 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 11 Aug 2017 19:53:16 +0200 Subject: Fix get and set localisation --- archaeological_warehouse/models.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'archaeological_warehouse') 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 -- cgit v1.2.3