OMG, I hope not! Tell us about your quick trip to the country of tears.
If you want the storage to be freed, you must override the .delete () model method, delete the file, and then super () so that the DB completes the cleanup.
Update: I was wrong ... maybe. From looking at the code in django / db / fields / files.py (ver 1.1.1), I see that under certain circumstances, depending on which storage object the class you are using, it may (or not) delete linked storage. Unfortunately, when and why is inconsistent, and there is a 2+ year ticket open on this ambiguity. The default_storage class deletes the associated file, but not reliably (see the above ticket).
This means that you need to be careful and test the specific storage class that you use before important data gets into an undefined state.
source share