如何使用Django验证器将日期限制为1900或更高

我发现
this commit显示_datere模式现在需要一个日期> 1900但……当我今天看到django.core.validators时,我没有看到这样的东西(上面提到的提交确实说它是从7年前开始的).

django中的这个验证发生了什么,以及Django 1.4.1今天使用什么来获得这种类型的验证?

我问这个是因为strftime错误:

"ValueError('year=1800 is before 1900; the datetime strftime() methods require year >= 1900',)"

谢谢!

最佳答案 @SimeonVisser给出了一个很好的解释,说明你曾经获得此异常的原因以及你不再这样做的原因.

如果仍然希望日期大于1900作为业务逻辑而不是实际的固有限制,那么您应该能够使用内置的Django MinValueValidator.只需输入1900-01-01的日期/日期时间,即

validators=[MinValueValidator(datetime(1900, 1, 1, 0, 0))]
点赞