Django, как получить аннотированное поле связанной модели

Например, модель Invoice имеет поле проекта, которое указывает ForeignKey на модель Project, Project имеет пользовательский ProjectManager, который get_queryset определен, в get_queryset я делаю: super().annotate(display=...)

и когда я хочу получить это аннотированное поле через Invoice: Invoice.objects.filter(project__display__iregex=...) то возникает ошибка, что в проекте нет отображаемого поля, как я могу сделать так, чтобы связанные модели брали поля из некоторого набора запросов, это get_queryset() для нас

  • Django 4.2.4
  • Python 3.10

Для получения аннотированных полей я использую подзапрос:

Subquery(models.Project.objects.filter(id=OuterRef("project_id")).values_list("display"))

но из-за этого запрос выполняется очень медленно.

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