0
如果我有一個帶有start_date
和end_date
日期字段的Django Employee
模型,如何在ORM中使用get來有效地選擇正確的記錄,如果記錄的不同版本隨時間而存在在這些日期字段?Django有效檢索ORM記錄
這樣我就可以有如下記錄:
start_date, end_date, emp
01/01/2013, 31/01/2013, Emp1
01/02/2013, 28/02/2013, Employee1
01/03/2013, 31/12/4000. EmpOne
如果今天的日期是10/02/2013
那麼我想Employee1
。類似
東西:
from django.utils import timezone
current_year = timezone.now().year
Employee.objects.get(end_date__year=current_year)
或
res = Employee.objects.filter(end_date__gt=datetime.now()).order_by('-start_date')
還是有做同樣的一個更有效的方法?
如果什麼有匹配當前日期,不止一個行? – Alp
記錄只有一個日期有效版本。 – Superdooperhero
您是否在搜索與當前時間相比最接近的end_date? – Alp