Как аннотировать сумму двух столбцов в Django, когда один из них должен быть отфильтрован, а другой сначала разобран?
У меня есть x
, a ManyToManyField
, которые я хочу отфильтровать по имени. Этого можно достичь с помощью
count1 = Q(x__name__contains=UNSUPPORTED_FORMATS)
У меня также есть y
, JSONField
, который на самом деле является списком. Я хочу подсчитать элементы внутри него, после того, как я отфильтрую нерелевантные элементы. Этого можно добиться с помощью
count2 = len(list(filter(lambda y: not y.endswith(tuple(UNSUPPORTED_FORMATS)), object.y)))
Теперь я хотел бы аннотировать весь набор запросов object
столбцом, равным count1 + count2
Как я могу создать эту аннотацию?