Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何通过编程在文件上载时创建目录,并使用django将上载的文件保存到该目录中?_Python_Django - Fatal编程技术网

Python 如何通过编程在文件上载时创建目录,并使用django将上载的文件保存到该目录中?

Python 如何通过编程在文件上载时创建目录,并使用django将上载的文件保存到该目录中?,python,django,Python,Django,我正在尝试在文件上载时以编程方式创建目录。我能够创建目录使用日期和时间戳,同时文件也得到上传。但在上传过程中,我无法将文件保存在目录中 我的观点 def uploadfile(request): dirname = datetime.now().strftime('%Y.%m.%d.%H.%M.%S') context = {} if request.method == 'POST': uploaded_file = request.FILES['do

我正在尝试在文件上载时以编程方式创建目录。我能够创建目录使用日期和时间戳,同时文件也得到上传。但在上传过程中,我无法将文件保存在目录中

我的观点

def uploadfile(request):
    dirname = datetime.now().strftime('%Y.%m.%d.%H.%M.%S') 

    context = {}
    if request.method == 'POST':
        uploaded_file = request.FILES['document']
        fs = FileSystemStorage()
        os.mkdir(os.path.join('uploads', dirname)) #'uploads' is my media root folder
        name = fs.save(uploaded_file.name, uploaded_file) ##** this file need to be saved inside the /uploads/2010.08.09.12.08.45/files_name **##
        context['url'] = fs.url(name)
    return render(request, 'upload.html', context)
上面的代码使用POST和从模板中使用表单上传文件,它还创建了一个带有当前时间戳的文件夹。但问题是我无法将文件保存在文件夹中。

def uploadfile(请求):
dirname=datetime.now().strftime(“%Y.%m.%d.%H.%m.%S”)
上下文={}
如果request.method==“POST”:
folder='uploads/{name}/file_name'。格式(dirname)
上传的文件=请求文件['document']
fs=文件系统存储(位置=文件夹)
mkdir(os.path.join('uploads',dirname))
name=fs.save(上传的\u文件.name,上传的\u文件)
上下文['url']=fs.url(名称)
返回呈现(请求'upload.html',上下文)

以下几点对我来说很好

def uploadfile(request):
    dirname = datetime.now().strftime('%Y.%m.%d.%H.%M.%S') #2010.08.09.12.08.45 
    context = {}
    if request.method == 'POST':
        uploaded_file = request.FILES['document']
        fs = FileSystemStorage(location=dirname)
        name = fs.save(uploaded_file.name, uploaded_file)
        context['url'] = fs.url(name)
    return render(request, 'upload.html', context)

如果将行folder='uploads/{name}/file_name'.format(dirname)更改为folder='uploads/'+dirname.format(dirname),则它可以正常工作。。谢谢