Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class CustomTripFilter(filters.Filter):
- def filter(self, qs, value):
- if value in EMPTY_VALUES:
- return qs
- try:
- value = int(value)
- except ValueError:
- raise ValidationError('Trip filter must be integer.')
- trip = Trip.objects.get(pk=value)
- qs = qs.filter(vehicle_id=trip.vehicle_id)
- if trip.start_location is None:
- raise ValidationError('Trip is not valid.')
- qs = qs.filter(pk__gte=trip.start_location.pk)
- if trip.end_location is not None:
- qs = qs.filter(pk__lte=trip.end_location.pk)
- return qs
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement