在django中上传文件时出现另一个CSRF令牌错误

时间:2012-03-07 10:36:14

标签: django forms file-upload

我正在尝试在我的视图中上传csv文件。我包含了csrf令牌,但是当我尝试上传文件时,我直接收到403错误。这是我的观点和模板:

MY FORM HTML

<div class="file-boxes">
        <form enctype="multipart/form-data" action="" encoding="multipart/form-data" id="upload-csv" method="post">
            {% csrf_token %}
            {{form.csv}}
            <!-- <input class="input-file" id="fileInput" type="file" size="14" name="csv_upload" onchange="this.form.submit()"> -->
        </form> 
    </div>

我的表格

class DeliveryDataForm(forms.Form):
    csv = forms.FileField(widget=forms.ClearableFileInput(attrs={'size:':14,'onchange':'this.form.submit()'}))

我的观点

def upload_data(request):
    ...
    form = DeliveryDataForm()

    if request.method == "POST":
        import pdb
        pdb.stack_trace()
        form = DeliveryDataForm(request.POST, request.FILES)
        return HttpResponse('asd')

    return render_to_response(template,context)

我知道视图中有一些缺失的部分,但奇怪的是,它永远不会进入if部分。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

from django.shortcuts import render
# ...
# return render_to_response(template,context)
return render(request,'index.html',context)