Hi Steve, It looks like it might only work on PostgreSQL unti this bug <https://code.djangoproject.com/ticket/24793> is fixed.
Simon Le mardi 19 janvier 2016 14:59:57 UTC-5, Steven Nash a écrit : > > Hi Simon, > > Thanks, I'll give that ago. > > Cheers, > > Steve > > On Tuesday, 19 January 2016 18:52:06 UTC, Simon Charette wrote: >> >> Hi Steve, >> >> You can use annotate for this >> <https://docs.djangoproject.com/en/1.9/ref/models/expressions/#using-f-with-annotations> >> . >> >> from datetime import timedelta >> >> from django.db.models import DurationField, ExpressionWrapper, F >> >> Entry.objects.annotate( >> duration=ExpressionWrapper( >> F('end') - F('start'), output_field=DurationField() >> ) >> ).filter(duration__gte=timedelta(minutes=time_in_minutes) >> >> >> Cheers, >> Simon >> >> Le mardi 19 janvier 2016 13:01:36 UTC-5, Steven Nash a écrit : >>> >>> Hi, >>> >>> Given an object such as: >>> >>> class Entry(models.Model): >>> start = models.TimeField() >>> end = models.TimeField() >>> >>> I'd like to be able to say something like: >>> >>> Entry.objects.filter(F('end')-F('start')__gt=time_in_minutes) >>> >>> Is there a way of doing this without implementing a separate duration >>> field and having a setter for start and end update it? >>> >>> Cheers, >>> Steve >>> >> -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/3bd1db8e-0b53-4b3b-b781-51e4cc8a687c%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.