使用日期差异查询注释

时间:2016-08-01 20:47:32

标签: django

我想使用以下表达式注释查询: [截止日期] - [现在] )/ [区间]

[截止日期] [间隔] 是数据库中的字段,而 [现在] 应该是"等于&# 34;到 timezone.now()

所以这看起来像:

.annotate(ratio=(F('due_date')-timezone.now())/F('Interval'))

但这不起作用,因为 timezone.now()只是转换为 str 表示。我需要的是以一种不依赖于数据库的方式将其转换为日期表示。这对Django ORM来说可行吗?然后我希望用日期格式理解减号和除法运算符。

1 个答案:

答案 0 :(得分:1)

使用儒略日期和数据库功能create_user代替Now

timezone.now()

如果您需要使用PostgreSQL和SQLite以外的其他数据库后端,请参阅Michael Brooks创建的Datediff函数。