Как агрегировать значения Jsonfield в Django?
У меня есть JsonField (col1) в модели (model1), которое содержит значения, как показано ниже:
{"key_1":"val_1", "key_2":"{\"sub_key1\":sub_val1, \"sub_key2\":sub_val2}"}
Я хотел бы агрегировать sub_key1 и sub_key2. Я пробовал ниже в Python, но это не работает.
from django.db.models import FloatField, JSONField
from django.db.models import Sum, Value
from django.db.models.functions import Cast
## try 1
model1.objects.annotate(val=Cast('col1__key_2__sub_key1', FloatField())).aggregate(op=Sum('val'))
## try 2
model1.objects.annotate(
val=Cast('col1__key1', JSONField())).annotate(
val_2=Cast('val__sub_key1', FloatField())).aggregate(op=Sum('val_2'))
Есть ли способ агрегировать эти подключи?