所以我找到了一个解决方案,它可以在django
1.10及更高版本上使用。我使用KeyTransform注释和提取了下一个键,并对此做了一个values_list。
from django.contrib.postgres.fields.jsonb import KeyTransformextracted_query = AbcModel.objects.annotate(lev1=KeyTransform('lev1', 'context')).annotate(lev2=KeyTransform('lev', 'lev1'))
该查询使我可以将lev1和lev2用作模型中的普通字段,因此我可以对这些字段执行values,values_list或任何其他有效查询。
Django 1.11允许将两个Transforms嵌套在一个注释中,因为我已经升级到1.11,所以不确定约1.10的嵌套
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)