Login

File deletion of FileField and ImageField in the Admin panel

Author:
davmuz
Posted:
July 4, 2012
Language:
Python
Version:
1.4
Score:
2 (after 2 ratings)

This code runs well on Django 1.4 also with the Admin panel. It's important to get the storage and the path before delete the model or the latter will persist void also if deleted.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
class ImageModel(models.Model):
    image = ImageField(...)

    def delete(self, *args, **kwargs):
        # You have to prepare what you need before delete the model
        storage, path = self.image.storage, self.image.path
        # Delete the model before the file
        super(ImageModel, self).delete(*args, **kwargs)
        # Delete the file after the model
        storage.delete(path)

More like this

  1. Form field with fixed value by roam 1 week ago
  2. New Snippet! by Antoliny0919 1 week, 6 days ago
  3. Add Toggle Switch Widget to Django Forms by OgliariNatan 3 months ago
  4. get_object_or_none by azwdevops 6 months, 3 weeks ago
  5. Mask sensitive data from logger by agusmakmun 8 months, 2 weeks ago

Comments

Please login first before commenting.