我有一个类似于这个的模型:
class Trip(models.Model):
departure = models.DateTimeField()
arrival = models.DateTimeField()
我想做一个返回对象的查询,这些对象的到达时间比出发时间至少晚了2个小时。
Trip.objects.filter(arrival__gt = "departure" + timedelta(hours=2))
这甚至可能吗?感谢
答案 0 :(得分:2)
您正在寻找filters that reference fields ont the model
但是,如果要比较模型字段的值,该怎么办? 同一型号的另一个领域?
请参阅此示例:
>>> from datetime import timedelta
>>> Entry.objects.filter(mod_date__gt=F('pub_date') + timedelta(days=3))
对于你的情况:
from django.db.models import F
Trip.objects.filter(arrival__gt = F('departure') + timedelta(hours=2))