我的django模型中有一个可选的日期字段:
award_grant_date = models.DateField(null=True, blank=True)
当用户将日期字段留空时,将NULL插入DateField,否则插入日期.
但是,如果用户确实在DateField中输入了日期,并且用户在表单中选择了其他一些特定数据,那么我想在DateField中插入NULL.
所以,在我的表单中,我有以下代码:
class AwardGrantDetailsForm(forms.Form): ... award_grant_date = forms.DateField( widget=forms.DateInput(attrs={'id':'id_award_grant_date'}), input_formats=settings.DATE_INPUT_FORMATS, label=_('Date'), required=False) ... elif cd_agdf['award_grant_type'] == 8888 or cd_agdf['award_grant_type'] == 9999: self.cleaned_data['award_grant_type_description'] = '' self.cleaned_data['award_grant_date'] = 'NULL' //this is the issue here!
我得到的错误是:
[u"'NULL' value has an invalid date format. It must be in YYYY-MM-DD format."]
我似乎无法正确地将语法输入到award_grant_date日期字段中.
我正在使用bootstrap datepicker和django 1.4.
如何编写代码self.cleaned_data ['award_grant_date'] =''插入所需的NULL?我已将models字段设置为null = True,blank = True!
数据库null的Python表示形式为None
:
self.cleaned_data['award_grant_date'] = None