[英]Django form at valid() stage failing Validation
我创建了一个 html 表单,该表单链接到 django 表单。 当 html 表单数据传递到 django 表单时,它在 form.is_valid(): 处失败。 我认为它与格式有关,但我已阅读文档但找不到解决方案。
表格.py
class AvailabilityForm(forms.Form):
name = forms.CharField(max_length=80, required=True)
email = forms.EmailField(max_length=254, required=True)
start_date = forms.DateField(input_formats=["%Y-%m-%d", ])
start_time = forms.TimeField(input_formats=["%H:%M", ])
end_date = forms.DateField(input_formats=["%Y-%m-%d#", ])
end_time = forms.TimeField(input_formats=["%H:%M", ])
html表格
<form class="form-book" action="" method="POST" id="datetimepicker1">
{% csrf_token %}
<label for="id_name">Name</label>
<input type="text" name="name" maxlength="80" required_id="id_name" required>
<label for="id_email">Email</label>
<input type="email" required_id="id_email" name="email" max_length="254" required>
<label for="id_start_date">Start Date</label>
<input type="date" name="start_date" required_id="id_start_date" class="datepicker" required>
<label for="id_start_time">Start Time</label>
<input type="time" name="start_time" required_id="id_start_time" class="timepicker" required>
<label for="id_end_date">End Date</label>
<input type="date" name="end_date" required_id="id_end_date" class="datepicker" required>
<label for="id_end_time">End Time</label>
<input type="time" name="end_time" required_id="id_end_time" class="timepicker" required>
<button class="btn btn-signup right" type="submit">Book</button>
</form>
form.is_valid()
指的是客户端发送的request.POST
中的数据。 您的视图应该重新显示带有错误消息的表单。 您上面的自定义 HTML 不会这样做。 文档在这里。
按照文档,你需要这样的东西
<form class="form-book" action="" method="POST" id="datetimepicker1">
{% csrf_token %}
{{ form.non_field_errors }}
<div class="fieldWrapper">
{{ form.name.errors }}
<label for="{{ form.name.id_for_label }}">Name:</label>
{{ form.name }}
</div>
...
{{form.non_field_errors}}
很容易被遗忘,并且是不能与任何特定字段相关联的错误
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.