我希望你们能告诉我如何在我的forms.py中对单个字段使用验证方法。我的视图是一个generic.FormView
,我的表单是forms.Form
。这是我的观点:
class ClassSetupView(OrganisorAndLoginRequiredMixin, generic.FormView):
template_name = "leads/class_setup.html"
form_class = ClassSetupForm
def get_success_url(self):
return reverse("class-setup-sucess-page")
def form_valid(self, form):
# Some Other Code
return super(ClassSetupView, self).form_valid(form)
这是我的表格:
class ClassSetupForm(forms.Form):
date = forms.DateField(help_text="Year-01-01",)
clean_date(self):
date = self.cleaned_data['date']
if date < datetime.date.today():
raise ValidationError(_('Invalid date - renewal in past'))
return date
我希望你们能告诉我,是否可以使用表单的clean_date(self)
作为验证字段date
的一种方式。我在网上看到了几个例子,但我不确定clean_date(self)
是否适用于我的情况。谢谢。
发布于 2021-04-23 02:12:59
使用干净的方法进行验证是可以的。查看官方django文档:https://docs.djangoproject.com/en/3.2/ref/forms/validation/#cleaning-a-specific-field-attribute
https://stackoverflow.com/questions/67223003
复制