Как ссылаться на результат кверисета в Django

Модель класса, которую я написал, сложная и большая, поэтому я не могу написать весь код здесь. Пожалуйста, поймите.

[views.py]

separate_line = Assignment.objects\
                  .values('id')\
                  .annotate(ABC=Min(F('feedback__ABC_date')))\
                  .annotate(C1D1_ABC=ExpressionWrapper(Cast(F('feedback__injection_date'), DateField()), output_field=DateField()) -
                                     ExpressionWrapper(Cast(F('ABC'), DateField()), output_field=DateField())) \
                  .values('id', 'C1D1_ABC')

Result: <QuerySet [{'id': 3391, 'C1D1_ABC': datetime.timedelta(days=13)}, {'id': 3392, 'C1D1_ABC': datetime.timedelta(days=27)}]>

Мне удалось извлечь нужный набор запросов, создав поле C1D1_ABC с помощью id и аннотации.

ABC_C1D1 = Feedback.objects.values('assignment__research')\
                           .annotate(separate_sum=Sum(separate_line['C1D1_ABC'], filter=Q(assignment_id__in=separate_line['id'])),
                                     separate_count=Count('assignment', distinct=True, filter=Q(assignment_id__in=separate_line['id'])))\
                           .values('assignment__research__research_name', 'separate_sum', 'separate_count')\

Я пытаюсь применить queryset result(-> separate_line) к другому вычислению ORM, но возникает следующая ошибка.

Сообщение об ошибке: Индексы QuerySet должны быть целыми числами или фрагментами, а не строками

Если я заменю ['id'] на [0], ссылаясь на сообщение об ошибке, появится следующее сообщение об ошибке. Сообщение об ошибке: Поле 'id' ожидало число, но получило 'id'.

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