diff options
| -rw-r--r-- | archaeological_warehouse/models.py | 19 | 
1 files changed, 18 insertions, 1 deletions
| diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index b32d608af..ecf33bb87 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -27,7 +27,8 @@ from django.contrib.postgres.indexes import GinIndex  from django.core.exceptions import ObjectDoesNotExist  from django.core.urlresolvers import reverse  from django.db.models import Q, Max, Count -from django.db.models.signals import post_save, post_delete, m2m_changed +from django.db.models.signals import post_save, post_delete, m2m_changed, \ +    pre_delete  from django.template.defaultfilters import slugify  from ishtar_common.utils import ugettext_lazy as _, pgettext_lazy @@ -1368,7 +1369,23 @@ def container_post_save(sender, **kwargs):          loca.save() +def container_pre_delete(sender, **kwargs): +    instance = kwargs["instance"] +    q = Container.objects.filter( +        container_tree_child__container_parent=instance) +    q.update(cached_division="") + + +def container_post_delete(sender, **kwargs): +    instance = kwargs["instance"] +    q = Container.objects.filter(cached_division="", location=instance.location) +    for c in q.all(): +        c.save() + +  post_save.connect(container_post_save, sender=Container) +pre_delete.connect(container_pre_delete, sender=Container) +post_delete.connect(container_post_delete, sender=Container)  m2m_changed.connect(document_attached_changed,                      sender=Container.documents.through) | 
