Django表单向导:删除由中间步骤存储的临时文件

时间:2013-07-26 13:46:57

标签: django django-formwizard django-storage

我正在使用django(1.4)formwizard作为我的应用程序。 在第1步中,我上传了2个文件。这些文件在第二步中使用。 一切都很好但是这个---> “当我完成所有步骤或在步骤1之后停止时,我仍然将临时文件存储在MEDIA目录中”

如何在任何情况下确保删除这些文件?

2 个答案:

答案 0 :(得分:2)

Django在文档中说你必须自己管理这些文件,所以:

您可以将上传路径设置为/ tmp(如果您使用的是Linux),以便自动删除它们。

另一种方法是您可以编写脚本以定期运行并删除它们。

答案 1 :(得分:0)

您需要制定两个步骤。

第一步是在向导视图上设置file_storage变量,使用params来标识向导的执行,以避免在上一条评论中告知的prev next步骤出错。

然后在向导的done()函数中删除所有文件夹内容(记得在执行中为每个向导使用一些独特的模式),这样就可以在结束之前删除提交中的所有文件。向导。