我试图在django表单中使用DateField输入。据我所知,我一直很好地遵循文档,但每次都没有通过验证
这是表单类-
class dForm(forms.Form):
date = forms.DateField(input_formats = ["%d/%m/%Y",])
这是视图文件-
def index(request):
if request.method == 'GET':
form = dForm()
return render(request, 'index.html', { 'form' : form })
else:
data = dForm(request.POST)
if data.is_valid():
return HttpResponse('ok')
else:
return HttpResponse('not ok')
这是模板-
<!DOCTYPE html>
<html>
<body>
<form method="post">
{% csrf_token %}
{{ form }}
<input type="submit">
</form>
</body>
</html>
(这只是一个试用项目,其中没有任何其他视图或表单。)
我发现这个答案也有同样的问题-
https://stackoverflow.com/questions/9410058/django-forms-datefield-fails-validation
但是这个解决方案对我不起作用
好的,我算出了,在格式字符串中,我输入了%Y,它需要输入四位数的年份,但我一直都在输入两位数的年份
我不确定,但也许你应该把
data = dForm(request.GET)
改成data = dForm(request.POST)
相关问题 更多 >
编程相关推荐