Python 未在django中验证表单
我的表单没有返回数据。。 这是密码 views.pyPython 未在django中验证表单,python,django,Python,Django,我的表单没有返回数据。。 这是密码 views.py if request.method=="POST": add_gateway_details_form=Add_Gateway_Details(request.POST) add_gateway_parameters_form=Add_Gateway_Parameters(request.POST) if add_gateway_details_form.is_valid():
if request.method=="POST":
add_gateway_details_form=Add_Gateway_Details(request.POST)
add_gateway_parameters_form=Add_Gateway_Parameters(request.POST)
if add_gateway_details_form.is_valid():
gateway_name=add_gateway_details_form.cleaned_data['gateway_name']
print gateway_name
else:
add_gateway_details_form=Add_Gateway_Details()
if add_gateway_parameters_form.is_valid():
gateway_param1=add_gateway_parameters_form.cleaned_data['gateway_param1']
print gateway_param1
gateway_param2=add_gateway_parameters_form.cleaned_data['gateway_param2']
print gateway_param2
else:
print "else"
else:
add_gateway_details_form=Add_Gateway_Details()
add_gateway_parameters_form=Add_Gateway_Parameters()
当我从add_gateway_parameters_表单打印数据时,它将进入else部分,但对于add_gateway_details_表单,它工作正常…(我不是问验证问题)
不要在
else
部分重置表单,只需将表单传递给模板,并在模板中显示表单和表单字段错误。有了这些,您就可以看到为什么它没有验证。如果表单无效,为什么要重新实例化它们?这意味着您的用户将永远看不到错误。我不是在问验证问题……我是在问我没有获得数据(我已编辑了问题……),但它将进入else部分,因为表单无效。除非您将验证过的表单返回到模板,并在模板中显示错误,否则您将不知道原因。但该表单对网关\u详细信息有效,但对网关\u参数无效……是的,可能是这样。所以显示错误,然后你就会知道原因。我不是在问验证问题……我是在问我没有得到数据(我已经编辑了问题……)
...
if add_gateway_parameters_form.is_valid():
gateway_param1=add_gateway_parameters_form.cleaned_data['gateway_param1']
print gateway_param1
gateway_param2=add_gateway_parameters_form.cleaned_data['gateway_param2']
print gateway_param2
else:
print "else"
#add_gateway_parameters_form=Add_Gateway_Parameters()
#dont do this, rather just pass `add_gateway_parameters_form` to template
...