Postgres: values query on json key with django

后端 未结 2 1361
心在旅途
心在旅途 2021-01-04 07:10

I need to do a values/values_list query on nested key on a postgres backed jsonfield in django 1.10 eg.

class AbcModel(models.model):
    context = fields.JS         


        
2条回答
  •  自闭症患者
    2021-01-04 07:41

    It's not ideal, but I was able to get this working by adding the json field as an extra field and then calling values on that extra field:

    AbcModel.objects.extra(select={
        "extra_field": "context->'lev1'->'lev2'"
    }).values('extra_field').distinct()
    AbcModel.objects.extra(select={
        "extra_field": "context->'lev1'->'lev2'"
    }).values_list('extra_field', flat=True).distinct()
    

提交回复
热议问题