Опустить разрешение границ базового резольвера в агрегированном запросе

Я возвращаю агрегированные данные для модели, у меня есть:

Objects {
  byColor {
    red
    blue
  }
}

По моему запросу, тогда в графене я имею:

class ObjectsQuery(DjangoObjectType):
  class Meta:
    model = Objects

  def resolve_by_color(self, _):
    return self.iterable.aggregate(...)

У меня проблема с производительностью, потому что кажется, что выполняется запрос ко всем объектам, хотя результаты этого запроса не включены ни в какие края. Есть ли способ избежать выполнения этого запроса Objects.objects.all()?

Вернуться на верх