Django order_by методом связанной модели - PullRequest
1 голос
/ 21 мая 2011

Я бы хотел заказать набор запросов «Событие» по «расстоянию» для каждого отдельного запроса

Учитывая следующее, как я могу это осуществить?

class Venue(models.Model):
    latitude = models.FloatField(max_length=10)
    longitude = models.FloatField(max_length=10)

    def distance(self, query_coordinates):
        "Calculates distance on a query by query basis"
        venue_coords = self.latitude, self.longitude
        distance_to_venue = distance.distance(query_coordinates, house_coords) # a function which outputs distance in miles
        return distance_to_venue

class Event(models.Model):
    venue = models.ForeignKey(Venue, related_name='shows')

Я пролил информацию на аннотированные документы после прочтения некоторых связанных с этим вопросов о стековом потоке, но не могу понять, как заставить его работать в моей ситуации. Как я могу сделать это эффективно ??

Заранее спасибо.

1 Ответ

1 голос
/ 21 мая 2011

Вы не можете выполнить это, django не поддерживает упорядочение методами модели.

Для работы с геопространственными данными попробуйте GeoDjango (http://docs.djangoproject.com/en/dev/ref/contrib/gis/).

...