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

标签 python django

我找到了 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))]

关于python - 如何使用 Django 验证器将日期限制为 1900 或更长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12322799/

相关文章:

python - 将 R 翻译成 Python 管道 - 过滤、选择和排序

python - Fabric 能否知道期望主机断开连接?

python - 尝试了 Django get_absolute_url NoReverseMatch 零模式

django - 如何限制Django中同一帐户登录的并发用户数

python - 应用 django/docker 文件中的更改

Python - 将美元值转换为 float

python pandas - 如何将规范化函数应用于数据框列

python - 计算python中值的数量

django - set_language View 给我一个 "Page not found"错误

Django按计数排序