使用ISO-8601日期字符串与Django官方支持和移植的ORM中的DateField进行比较吗?

时间:2016-08-25 09:01:06

标签: django date django-models orm

似乎使用Django的ORM,我可以在查询模型的datetime.date时始终使用ISO-8601日期字符串而不是DateField。例如,如果我有一个类似的模型:

from django.db import models

class Sitting(models.Model):
    start_date = models.DateField()

然后根据我的经验,查询如下工作:

Sitting.objects.filter(start_date='2015-12-25')
Sitting.objects.filter(start_date__gte='2016-01-01')

......以及:

Sitting.objects.filter(start_date=datetime.date(2015, 12, 25))
Sitting.objects.filter(start_date__gte=datetime.date(2016, 1, 1))

我的问题是:

  • 这是官方支持的,还是可能有一些基础数据库使用ISO-8601字符串不起作用?
  • 我可能会遗漏一些明显的东西,我无法在任何地方找到这些文档 - Django文档中是否有某个地方描述了如何使用DateField字段的查询中使用的值?

0 个答案:

没有答案