ここでのシナリオは、zipfile を受け取り、それを解凍してメディア ディレクトリに保存するエンドポイントがあるということです。これがそのためのコード全体です
def get_filenames(path_for_zip):
with ZipFile(path_for_zip, 'r') as zip:
return zip.namelist()
class Upload(View):
def post(self, request):
context = {}
upload_file = request.FILES['document']
unzip_file = get_filenames(upload_file)
for files in unzip_file:
print(files)
fs = FileSystemStorage()
fs.save('read.jpg', files)
return render (request, 'toDo_app.html', context)
ご覧の通り使っFileSystemStorage
ています。ZipFile
適切に解凍されており、それを見ることができますprint(files)
が、問題はFileSystemStorage
おそらく保存されていないため、次のエラーが発生します。
attribute error 'str' object has no attribute 'read'.
私が何を間違えたのか、どうすれば解決できるのか教えてください。ありがとうございました。