如何在django模型中创建csv文件并保存到文件?

时间:2017-09-22 17:17:39

标签: python django export-to-csv

我正在使用django csv(https://docs.djangoproject.com/en/1.11/howto/outputting-csv/),我想将生成的csv文件保存到以下模型中的文件字段

class CsvDoc(models.Model):
    csv_file = models.FileField(
    upload_to="path")

1 个答案:

答案 0 :(得分:0)

要保存此文件,您需要在views.py中记下一个函数,然后保存该文件。代码如下:

def upload_file(request):
    if request.method == 'POST':
        form = UploadForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/url/')
    else:
        form = UploadFileForm()
    return render_to_response('file.html', {'form': form})

其中UploadForm是一个表单类,您需要在forms.py文件中写下它:

class UploadForm(forms.ModelForm):
class Meta:
    model = CsvDoc

在file.html中:

<form enctype="multipart/form-data" action="/file/" name="test" method="post">
{% csrf_token %}
{{form.as_p}}
<input id="formSubmit" type="submit" value="Submit">

试试这个,告诉我它运行正常。感谢。