django上传文件无模型

问题描述 投票:0回答:3

是否可以在 django 中上传带有表单中的 FileField 但没有模型的文件?到目前为止我只能找到带有模型的示例。我不想在我的数据库中创建一个表,我只想上传一个文件。 我的形式:

class csvUploadForm(forms.Form):
    csvFile = forms.FileField(label='Select a CSV file to upload.', help_text='help')

谢谢你,

罗曼

django file upload
3个回答
7
投票

示例摘自 Django 文档

from django.http import HttpResponseRedirect
from django.shortcuts import render_to_response

def upload_file(request):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            handle_uploaded_file(request.FILES['file'])
            return HttpResponseRedirect('/success/url/')
    else:
        form = UploadFileForm()
    return render_to_response('upload.html', {'form': form})

def handle_uploaded_file(f):
    destination = open('some/file/name.txt', 'wb+')
    for chunk in f.chunks():
        destination.write(chunk)
    destination.close()

您可以将“some/file/name.txt”替换为您要存储该文件的其他路径。


0
投票

Django 文档的文件上传部分对此进行了介绍。简而言之,使用

UploadedFile
中给出的
request.FILES
实例。


0
投票

这正是最简单的解决方案📍https://youtu.be/MqNKHihcgYo

© www.soinside.com 2019 - 2024. All rights reserved.