Я запускаю набор фильтров на одной из моих моделей. В частности, я делаю что-то подобное в одном из моих взглядов:Фильтрация набора запросов django на основе вычисленных значений
cities = City.objects.filter(name__icontains=request.GET['name']
cities = City.objects.filter(population__gte=request.GET['lowest_population']
return cities
Теперь я хотел бы добавить еще один, другой тип фильтра. В частности, я хотел бы включить только те города, которые находятся на определенном расстоянии от определенного почтового индекса. У меня уже есть соответствующие функции для этого, то есть что-то вроде:
distanceFromZipCode(city, zipCode)
# This returns 110 miles, for example
Как объединить QuerySet Джанго фильтрации с этим дополнительным фильтром, я хотел бы добавить? Я знаю, что если города были просто списком, я мог бы просто использовать .filter() и передать соответствующую лямбду (например, вернуть true, если расстояние от соответствующего почтового индекса < 100).
Но я имею дело с наборами запросов, а не с простыми списками, так как я могу это сделать?