【发布时间】:2015-07-23 23:31:16
【问题描述】:
我的查询从我的模型字段返回 Max 时间。
results = MyModel.objects.filter(
id=pk,
date__range=(start_time, end_time)
).values('my_id'
).annotate(max_time=Max('my_date_time'))
到目前为止,一切都很好。现在我需要从我的my_date_time 字段中输入subtract 时间(60 分钟)。
对我来说最方便的是如果我能以某种方式直接在我的 html 模板中减去时间。有没有可用的过滤器?
如果没有,有没有办法在这个查询中使用 MySQL SUBTIME() 函数或 Python timedelta?
非常感谢您的建议和反馈!
如果之前已经有类似的问题被问过/回答过,不知何故我错过了,我深表歉意!
编辑:
是的,my_date_time 字段是有效的 datetime 模型字段。
【问题讨论】:
-
返回值是
datetime对象吗? -
是的,
my_date_time是一个有效的datetime对象 -
那么看来您应该能够使用
timedelta对象从查询返回的datetime对象中减去60 分钟。编辑:也许像这样datetime_object = mymodel_object - datetime.timedelta(minutes=60) -
Nick,我试过了,失败了,你能提供一个代码示例吗?非常感谢!
-
尼克,我没有效仿你的榜样。我该如何使用上面的
results = MyModel.objects.filter(...?