DateTime字段中的unix时间戳输入

时间:2011-12-13 10:43:45

标签: django django-models django-forms

按照规范我在UnixTimeStamp输入日期和时间另外,我需要检查输入中只有数字(也不是这样的“2011-12-12”) 我现在有forms.DataTimeFieldmodel.DataTimeField

我决定以这种方式修改它: 添加UnixTimeStampField(forms.RegexField) - 这里我用正则表达式检查,我只有数字。

但我遇到了模型问题,因为UnixTimeStampField(forms.RegexField)基于字符串,需要转换为数据时间。 我不喜欢这个解决方案。

我如何创建UnixTimeStampField(forms.DateTimeField)之类的内容? 我尝试这样做,但是当输入“123321”时,我从DateTimeField验证器获得了“不正确的参数”。

1 个答案:

答案 0 :(得分:2)

您不需要自定义模型和/或表单字段。只需使用内置的forms.DateTimeFieldmodels.DateTimeField,然后将以下设置添加到settings.py

DATETIME_FORMAT = "U"
DATETIME_INPUT_FORMATS = ("%s",)

详细了解此设置here