如何查询django JSON字段中的特定字段

How to query specific field in django JSON field

我有一个模型,它有 JSON 个名为 data 的字段。我需要查询所有模型,在这个 data 字段中有 type,以字符串 gpa.

开头

对应查询为:

select data ->> 'type' from model where data ->> 'type' like 'gpa.%'

我如何使用查询集来做到这一点?我所能找到的只是一个完全匹配,而不是 startswith。我正在使用 Django 1.18

我假设你有数据 jsonfield,并且你正在搜索以 'gpa.' 开头的命名类型的键值。你可以试试这个:

Model.objects.filter(data__type__startswith='gpa.')