From 6bf8a3df10be9002fd36dc530546c70a9813ae0f Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Wed, 7 Dec 2011 04:22:34 -0400 Subject: [PATCH] Fix document delete regresion --- apps/documents/models.py | 14 ++++++-------- apps/documents/views.py | 2 +- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/apps/documents/models.py b/apps/documents/models.py index b691cdc36d..90f7e6912e 100644 --- a/apps/documents/models.py +++ b/apps/documents/models.py @@ -176,12 +176,10 @@ class Document(models.Model): def add_as_recent_document_for_user(self, user): RecentDocument.objects.add_document_for_user(user, self) - # TODO: investigate if Document's save method calls all of it - # DocumentVersion's delete methods - #def delete(self, *args, **kwargs): - # super(Document, self).delete(*args, **kwargs) - # for version in self.documentversion_set.all(): - # version.file.storage.delete(version.file.path) + def delete(self, *args, **kwargs): + for version in self.versions.all(): + version.delete() + return super(Document, self).delete(*args, **kwargs) @property def size(self): @@ -497,8 +495,8 @@ class DocumentVersion(models.Model): self.save() def delete(self, *args, **kwargs): - super(DocumentVersion, self).delete(*args, **kwargs) - return self.file.storage.delete(self.file.path) + self.file.storage.delete(self.file.path) + return super(DocumentVersion, self).delete(*args, **kwargs) def exists(self): ''' diff --git a/apps/documents/views.py b/apps/documents/views.py index 3234a2014e..d7ab3701f3 100644 --- a/apps/documents/views.py +++ b/apps/documents/views.py @@ -198,7 +198,7 @@ def document_delete(request, document_id=None, document_id_list=None): document.delete() #create_history(HISTORY_DOCUMENT_DELETED, data={'user': request.user, 'document': document}) - messages.success(request, _(u'Document: %s deleted successfully.') % document) + messages.success(request, _(u'Document deleted successfully.')) except Exception, e: messages.error(request, _(u'Document: %(document)s delete error: %(error)s') % { 'document': document, 'error': e