Django: порядок по совокупному количеству в ArrayField - PullRequest
0 голосов
/ 25 октября 2019

У меня сложная проблема, надеюсь, ваша помощь, пожалуйста.

У меня есть модель с именем Place. В этой модели у меня есть поле с именем address_component. Это поле содержит массив себя :

Пример, два объекта, например:

Место (id = 1, name = "USA", types = "страна"", address_components = [])

Место (id = 2, name =" San Doria ", типы =" city ", address_components = [1])

class Place(models.Model):
    PLACE_TYPES = (
      ('country', "Country"),
      ('city', "City"),
      ('street', "Street")
    )
    name = models.CharField(max_length=255)
    types = models.CharField(max_length=100, choices=PLACE_TYPES)
    address_components = ArrayField(models.CharField(max_length=100), size=10, default=list, blank=True)

Теперь я хочу упорядочить набор запросов мест путем подсчета количества мест, в которых больше всего адресных_компонентов

Это моя попытка получить порядок наборов запросов стран по количеству городов в нем, но не успех

Place.objects.filter(types='country').annotate(cities_in_count=Count('address_components')).order_by('cities_in_count')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...