diff options
Diffstat (limited to 'archaeological_warehouse/models.py')
| -rw-r--r-- | archaeological_warehouse/models.py | 11 | 
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 | 
