Mik*_*keN 4 python django django-models
使用File字段删除Django Model对象是否会删除用于该文件的存储?它是否删除磁盘上的文件?
天哪,我当然希望不是!谈谈你快速前往泪水之地.
如果要释放存储空间,则应覆盖模型的.delete()方法,删除文件,然后使用super()让数据库完成清理.
更新:我错了......也许吧.通过查看django/db/fields/files.py(ver 1.1.1)中的代码,我可以看到在某些情况下,根据您使用的存储对象类,它可能(或可能不)删除关联的存储.不幸的是,什么时候和为什么不一致,并且有一个2 岁以上的门票打开这种模棱两可.default_storage类确实删除了关联的文件,但是不可靠(参见上面提到的票证).
这意味着在重要数据最终处于不确定状态之前,您需要小心并测试您正在使用的特定存储类.