是否可以使用表单中的FileField上传django中的文件,但没有模型?到目前为止,我只能找到一个模型的例子。我不想在我的数据库中为它创建一个表,我只想上传一个文件。 我的表格:
class csvUploadForm(forms.Form):
csvFile = forms.FileField(label='Select a CSV file to upload.', help_text='help')
谢谢,
罗曼
答案 0 :(得分:7)
从Django Documentation转载的示例。
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'替换为您要存储该文件的其他路径。
答案 1 :(得分:0)
这包含在Django文档的File Uploads部分中。简而言之,请使用UploadedFile
中提供的request.FILES
实例。