2

给定以下 Django 模型:

from django.db import models

class TimeStamp(models.Model):
    date = models.DateField()

我惊讶地发现我可以传入字符串而不是datetime对象:

In [4]: ts = TimeStamp.objects.create(date="2001-12-31")

In [5]: ts.date
Out[5]: '2001-12-31'

In [6]: reloaded_ts = TimeStamp.objects.get(id=ts.id)

In [7]: reloaded_ts.date
Out[7]: datetime.date(2001, 12, 31)

为什么 Django 这样做而不是错误类型?是否有这种行为的文档?它期待什么时间格式?

4

1 回答 1

7

是的,这是预期和记录的:
https ://docs.djangoproject.com/en/dev/ref/settings/#date-input-formats

于 2013-07-02T14:07:07.757 回答