繁体   English   中英

Django中的表单验证失败

[英]Form validation failing in Django

我试图获得一个表单来验证Charfield但使用Select小部件。

这是我的view.py代码:

def mpld3plot(request):
    form = PlotlyPlotForm()
    form.fields['plot_file'].widget.choices = own_funcs.uploaded_files(string=False)

    if request.method == 'POST':
        print(form.is_valid())
        if form.is_valid():

            return HttpResponseRedirect('/mpld3')

        else:
            pass
    else:
        pass

    return render(request, 'evert/plot.html', {'plottype': 'MPLD3',
                                               'form': form})

下面是我的forms.py代码:

class Mpld3PlotForm(forms.Form):

    plot_file = forms.CharField(widget=forms.Select(choices=[('', 'a'), ('', 'b')]))

表单不会在提交时验证。 我根据上传的文件动态更新选择。 任何帮助,将不胜感激。

原来我没有将request对象传递给表单。

view.py文件应如下所示:

def mpld3plot(request):
    form = PlotlyPlotForm(request.POST)
    form.fields['plot_file'].widget.choices = own_funcs.uploaded_files(string=False)

    if request.method == 'POST':
        print(form.is_valid())
        if form.is_valid():

            return HttpResponseRedirect('/mpld3')

        else:
            pass
    else:
        pass

    return render(request, 'evert/plot.html', {'plottype': 'MPLD3',
                                               'form': form})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM