if request.method == 'POST':
k = request.FILES
obj = request.FILES['upload']
t = int(time.time())
jobid = 'jobid'+str(t)
job_name = jobid + '_' + obj.name
print(job_name)
fr = open('prediction/PanPep/upload/' + job_name, 'wb+')
我使用 request.FILES 来获取上传的文件并在我的服务器上创建该文件。 当我上传第一个文件时一切都很好。但是当你创建文件时我收到错误。
这是错误: FileNotFoundError:[Errno 2]没有这样的文件或目录:'prediction/PanPep/upload/jobid1709638360_Example_zero-shot.csv' [2024年3月5日19:32:40]“发布/panpep/HTTP/1.1”500 67598
这似乎是由于某种冲突,如何解释这种现象以及我如何解决它。
提前致谢!
在 Web 中,不最好使用相对路径,因为你不知道当前目录是什么,所以使用绝对路径总是更好,在 Django 中,你可以通过使用 BASE_DIR 来实现。
另外,出于生产目的,最好将此路径放在
settings .py
中
UPLOADS_DIR = BASE_DIR + 'prediction/PanPep/upload/'
然后在你的代码中,
from django.conf import settings
fr = open(settings.UPLOADS_DIR + job_name, 'wb+')