【问题标题】:Django quering objects with timestamp deltaDjango使用时间戳增量查询对象
【发布时间】:2014-08-11 18:12:11
【问题描述】:

假设我有一个模型:

Mymodel(models.Model):
    endtimestamp = models.DateTimeField(null=True)

我需要一个查询来获取在今天午夜和昨天午夜之间带有 endtimestamp 的所有 Mymodel 对象。

我尝试了什么:

today = datetime.datetime.today()
todays_midnigh = datetime.datetime.fromtimestamp(
    today.strftime('%Y-%m-%d 00:00:00.0')
)
yesterday_midnight = todays_midnight - datetime.timedelta(days=1)
objs = Mymodel.objects.filter(endtimestamp__range(
    yesterday_midnight, todays_midnight)
)

但这行todays_midnigh = datetime.datetime.fromtimestamp(today.strftime('%Y-%m-%d 00:00:00.0')) 不起作用,我知道必须有一个非常pythonic 和清晰的方法来实现这一点。

【问题讨论】:

    标签: python django timestamp


    【解决方案1】:

    假设这个from datetime import datetime as dt,那么做:

    today = dt.today()
    todays_midnigh = dt.combine(today,dt.max.time())
    

    todays_midnigh = dt.combine(today,dt.min.time())
    

    视情况而定

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-30
      • 2018-04-21
      • 1970-01-01
      • 1970-01-01
      • 2015-11-18
      • 2019-05-13
      • 2020-10-11
      • 1970-01-01
      相关资源
      最近更新 更多