# OMG prev_qs = TaskPlace.objects.filter( Q( Q(place__address__lt=taskplace.place.address) | Q( Q(place__address=taskplace.place.address) & Q(place__id__lt=taskplace.place.id) ) ), task=task, status=taskplace.status). order_by( 'place__address', 'place__code') next_qs = TaskPlace.objects.filter( Q( Q(place__address__gt=taskplace.place.address) | Q( Q(place__address=taskplace.place.address) & Q(place__id__gt=taskplace.place.id) ) ), task=task, status=taskplace.status). order_by( 'place__address', 'place__code')