创建文件夹并将文件保存到该文件夹​​中,然后解压缩zip文件

时间:2018-05-29 11:10:42

标签: python django zipfile

我有这个代码,它根据登录用户创建一个文件夹,并将他们上传的文件保存到该文件夹​​中。用户上传的文件是我想在上传时提取的zip文件。

问题是此代码无法正常工作,因为它在创建后退出文件夹,因此会出现IO错误,说它无法找到该文件。

我将如何解决此问题?

def user_directory_path(instance, filename):
    # file will be uploaded to MEDIA_ROOT/user_<id>/<filename>
    zip = ZipFile(filename)
    return 'user_{0}/{1}'.format(instance.user, filename) and zip.extract()
  

例外值:

     

[Errno 2]没有这样的文件或目录:&#39; UploadedFile.zip&#39;

1 个答案:

答案 0 :(得分:0)

几点建议:

  • 您必须先创建'user_ {0}'目录
  • os.join()是制作路径的规范
  • 你的函数返回一个布尔值,不确定它是你想要的