From fb48221db57bd7193f99d45bd9ce165aee1e9a5e Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Wed, 14 Mar 2012 14:14:40 -0400 Subject: [PATCH] Also delete indexes on document delete signal --- apps/document_indexing/__init__.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/document_indexing/__init__.py b/apps/document_indexing/__init__.py index 72e39be556..8c79a8f3f9 100644 --- a/apps/document_indexing/__init__.py +++ b/apps/document_indexing/__init__.py @@ -3,7 +3,7 @@ from __future__ import absolute_import import logging from django.utils.translation import ugettext_lazy as _ -from django.db.models.signals import pre_save, post_save +from django.db.models.signals import pre_save, post_save, pre_delete from django.dispatch import receiver from navigation.api import (register_top_menu, register_sidebar_template, @@ -70,7 +70,7 @@ register_links(Index, [index_setup_edit, index_setup_delete, index_setup_view]) register_links(IndexTemplateNode, [template_node_create, template_node_edit, template_node_delete]) -@receiver(pre_save, dispatch_uid='delete_indexes_handler') + def delete_indexes_handler(sender, instance, **kwargs): if isinstance(instance, DocumentVersion): logger.debug('received pre save signal - document version') @@ -92,3 +92,6 @@ def update_indexes_handler(sender, instance, **kwargs): logger.debug('received post save signal - document metadata') logger.debug('instance: %s' % instance) update_indexes(instance.document) + +pre_save.connect(delete_indexes_handler, dispatch_uid='delete_indexes_handler_on_update') +pre_delete.connect(delete_indexes_handler, dispatch_uid='delete_indexes_handler_on_delete')