diff options
| -rw-r--r-- | archaeological_finds/models_finds.py | 15 | 
1 files changed, 11 insertions, 4 deletions
| diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 31ec20785..3e492222d 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -26,6 +26,7 @@ from django.db import connection  from django.db.models import Max, Q  from django.db.models.signals import m2m_changed, post_save, post_delete, \      pre_delete +from django.core.exceptions import ObjectDoesNotExist  from django.utils.translation import ugettext_lazy as _  from ishtar_common.data_importer import post_importer_action, ImporterError @@ -1393,10 +1394,16 @@ def pre_clean_find(sender, **kwargs):          if not bf.find.exclude(pk=instance.pk).count():              bf.delete() -    if instance.downstream_treatment: -        # TODO: not managed for now. Raise an error? -        return -    if not instance.upstream_treatment: +    try: +        if instance.downstream_treatment: +            # TODO: not managed for now. Raise an error? +            return +    except ObjectDoesNotExist: +        pass +    try: +        if not instance.upstream_treatment: +            return +    except ObjectDoesNotExist:          return      instance.upstream_treatment.upstream.clear()      instance.upstream_treatment.downstream.clear() | 
