我在django表单上使用jquery.ui.datepicker。
我正在使用DateInput(format='%b %d, %Y')
在模型中,它被定义为:models.DateField(default=datetime.now, blank=True)
但格式为'2014年8月6日'的日期失败。如何在save
方法表单上验证它?
答案 0 :(得分:0)
您可以使用表单中的clean方法来检查字段。假设您将datefield称为mydate,您可以在表单中编写一个名为def clean_mydate(dict)的方法,并在那里检查日期并在需要时引发任何错误。
这是验证表单字段的正确方法。
或者,如果要覆盖表单保存方法,则需要在表单中添加以下内容:
def save(self, commit=True):
instance = super(MyForm, self).save(commit=False)
my_date= self.cleaned_data['mydate']
// do some checks and raise errors
if commit:
instance.save()
return instance