Aralıktaki son tarihe bir gün eklemek için bir datetime.timedelta kullanarak , DateTimeField/date
nesne karşılaştırmasındaki hassasiyet eksikliğinden kaynaklanan "empedans uyuşmazlığı" ile karşılaşabilirsiniz . Bu şu şekilde çalışır:
start = date(2012, 12, 11)
end = date(2012, 12, 18)
new_end = end + datetime.timedelta(days=1)
ExampleModel.objects.filter(some_datetime_field__range=[start, new_end])
Daha önce de tartışıldığı gibi, böyle bir şey yapmadan, kayıtlar son gün göz ardı edilir.
Düzenlenmeden kaçınmak için düzenlenmiş datetime.combine
- a ile karşılaştırılırken DateTimeField
, tek tek (ve kafa karıştırıcı) datetime
nesnelerle uğraşmak yerine tarih örneklerine sadık kalmak daha mantıklı görünüyor . Aşağıdaki açıklamalarda daha fazla açıklamaya bakınız.