在表单对象实例化时添加了files=request.FILES后,页面选择上传文件,提交后显示This field is required

在表单对象实例化时添加了files=request.FILES后,页面选择上传文件,提交后显示This field is required

def Form_Fields(request):

    if request.method == "POST":

        Request_data = request.POST

        print("POST请求传回的信息:", Request_data)

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

        # 请求返回的数据内容验证通过

        if form.is_valid():

            verify_data = form.cleaned_data

            print(verify_data)

        # 验证不通过时,显示不通过的错误信息

        else:

            error_info = form.errors

            print(error_info)

    else:  # 表单请求为GET时向HTML页面提交的初始化数据内容

        initial_data = {

            'String': '111',

            'Number': '222',

        }

        # 实例化表单对象 form = Field_Form()

        form = Field_Form(initial=initial_data)

    # 将表单对象传入HTML文件

    return render(request, 'Form_Fields.html', {

        'form': form,

    })

https://img1.sycdn.imooc.com//climg/638050e40961b2e405360534.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小猿 2022-11-25 14:08:59

同学,你好!老师运行同学给的views 没有问题,同学看下html 页是否写了enctype="multipart/form-data"

https://img1.sycdn.imooc.com//climg/63805aa509eb969a08310151.jpg

forms.py 是否添加了file = forms.FileField(label="文件上传") 设置文件上传

https://img1.sycdn.imooc.com//climg/63805aec09f9f68610360253.jpg

添加各标签内容,再选择一个文件,然后点击“提交表单信息”老师这边是可以的

https://img1.sycdn.imooc.com//climg/63805bc50941532c09500137.jpg

祝学习愉快~



  • 提问者 QXY_DZ #1

    forms.py文件中,我用的是forms.ImageField

    2022-11-25 14:57:13
  • 好帮手慕小猿 回复 提问者 QXY_DZ #2

    同学,你好!我们上传的是文件要用forms.FileField,祝学习愉快~

    2022-11-25 15:08:25
  • 提问者 QXY_DZ #3

    上传的是图片文件也要用FileField吗

    2022-11-25 15:40:12
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师