我在一个模型中有一个字段,例如:
class Sample(models.Model):
date = fields.DateField(auto_now=False)
现在,我需要按日期范围过滤对象。
如何过滤日期介于 1-Jan-2011
和 31-Jan-2011
之间的所有对象?
原文由 user469652 发布,翻译遵循 CC BY-SA 4.0 许可协议
我在一个模型中有一个字段,例如:
class Sample(models.Model):
date = fields.DateField(auto_now=False)
现在,我需要按日期范围过滤对象。
如何过滤日期介于 1-Jan-2011
和 31-Jan-2011
之间的所有对象?
原文由 user469652 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以将 django 的 filter
与 datetime.date
对象 一起使用:
import datetime
samples = Sample.objects.filter(sampledate__gte=datetime.date(2011, 1, 1),
sampledate__lte=datetime.date(2011, 1, 31))
原文由 Bernhard Vallant 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答5k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
4 回答937 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
采用
或者,如果您只是想按月过滤:
编辑
正如 Bernhard Vallant 所说,如果您想要一个排除
specified range ends
的查询集,您应该考虑 他的解决方案,它使用 gt/lt(大于/小于)。