【问题标题】:UploadFileForm(request.POST, request.FILES) return nullUploadFileForm(request.POST, request.FILES) 返回 null
【发布时间】:2018-08-15 07:30:15
【问题描述】:

我正在尝试使用 django 上传文件,我编写了以下代码:

from django import forms
class UploadFileForm(forms.Form):
    title = forms.CharField(max_length=50)
    file = forms.FileField()

def uploadexcel(request):
if request.method == 'POST':
    form = UploadFileForm(request.POST, request.FILES)
    print(form)
    print(form.is_valid())
    print(form.errors)
    if form.is_valid():
        print("success")    
else:
    form = UploadFileForm()
return render(request,'index.html', {'form': form})

我可以得到 request.POSTrequest.FILES 的值。
我使用 form = UploadFileForm(request.POST, request.FILES) 来构建 formform 的值为 null

【问题讨论】:

  • 什么意思,值为null?你在哪里设置? Python 不使用“null”作为值。
  • 你能在你的模板中显示表格吗?

标签: django


【解决方案1】:

像这样实例化您的表单。

form = UploadFileForm(data=request.POST, files=request.FILES)

【讨论】:

    【解决方案2】:

    问题可能出在这里

    请注意,request.FILES 将仅包含请求方法中的数据 是 POST 并且发布请求的具有属性 enctype="多部分/表单数据"。否则,request.FILES 将为空。

    阅读文档 https://docs.djangoproject.com/en/2.2/topics/http/file-uploads/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多