Django中的日期时间问题

aat*_*ifh 4 python django postgresql datetime

我正在尝试添加一个人的日期时间对象.每当出生年份少于1942年时,DataError: unable to parse time从DB读取数据时会出现奇怪的错误.

class Person(models.Model):
    """A simple class to hold the person info
    """
    name = models.CharField(max_length=100)
    born = models.DateTimeField(blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

每当我试图添加datetime1929年出生的人的出生对象然后尝试阅读它时,它就会失败.

让我重新假设数据插入工作正常,但在读取期间失败.我假设在内部数据库中出现问题.

我做了一套测试,并且每当我添加1940年或之前出生的人时,我都知道它失败了.它给出了 DataError: unable to parse time

我正在使用PostgreSQL.

任何形式的帮助将不胜感激.谢谢.

Nic*_*rry 6

我可以在这里找到的唯一的东西可以在PostgreSQL文档中找到.我的猜测是Django将你的日期存储在"重新定时"字段中,这个字段只能追溯到68年.我的计算器验证了2009-68 == 1941,这看起来非常接近您报告的内容.

我建议通过运行以下命令来查看表的模式:

$ python manage.py sql appname
Run Code Online (Sandbox Code Playgroud)

如我所料,查看有问题的日期字段是否为"reltime"字段.如果是这种情况,我不知道如何将其更改为更具竞争力的领域而不会搞砸一切.