我希望SplitDateField的日期部分是必需的,但是时间部分(如果留空)默认为某个值(“00:00:00”)。在
现在,我把它移植到Fields clean()方法中。有更好的方法吗?一种更像“Django”的方式?在
现在看起来像这样(在表单.py)公司名称:
def mp_clean(self, value):
# time is in value[1] of a split-datetime field:
field_value = value[1]
if field_value in self.empty_values:
value[1] = '00:00:00'
return self.mp_original_clean(value)
class MyModelAdminForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(MyModelAdminForm, self).__init__(*args, **kwargs)
that_field = self.fields['that_field']
if isinstance(that_field,forms.SplitDateTimeField):
that_field.mp_original_clean = that_field.clean
that_field.clean = types.MethodType(mp_clean, that_field)
您可以将splitdate-time字段小部件子类化,覆盖clean方法,然后使用模型表单上的^{} 属性来使用小部件。在
相关问题 更多 >
编程相关推荐