是否可以使用不等于但类似的运算符筛选json字段中的数据?模型:

from django.contrib.postgres.fields import JSONField
from django.db import models


class Dog(models.Model):
    name = models.CharField(max_length=200)
    data = JSONField()

其中数据行:
{"breed": "labrador0", "owner": {"name": "Bob0", "other_pets": [{"name": "Fishy"}]}}

然后我使用Dog.objects.filter(data__breed='labrador0')来接收数据,但是如果我想接收所有data.breed的行,比如'labrador%'-我不知道该怎么做。
我试过了-没有结果。
在psql中,我可以使用Dog.objects.filter(data__breed__contains='labrador')在哪里可以通过orm实现?

最佳答案

试试这个。

Dog.objects.filter(data__breed__startswith='labrador')

可能对你有帮助。

09-15 17:28