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 [email protected]. To post to this group, send email to [email protected]. 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.

