假设您的模型类如下所示:
from django.db import models
class MyModel(models.Model):
data = models.JSONField()
查询包含特定键的对象:
# 查询 data 字段中包含 'key' 键的对象
objects_with_key = MyModel.objects.filter(data__has_key='key')
查询包含特定值的对象:
# 查询 data 字段中包含值为 'value' 的对象
objects_with_value = MyModel.objects.filter(data__contains={'key': 'value'})
查询包含指定键的对象,且该键的值满足条件:
# 查询 data 字段中包含 'key' 键,且其值大于 10 的对象
objects_with_key_and_condition = MyModel.objects.filter(data__key__gt=10)
查询 JSON 数组中包含特定元素的对象:
# 查询 data 字段中包含数组 [1, 2, 3] 的对象
objects_with_array = MyModel.objects.filter(data__contains=[1, 2, 3])
这些示例演示了如何在查询中使用 JSONField。请注意,具体的实现和用法可能会因 Django 版本而异,因此建议查看与您正在使用的 Django 版本相对应的[官方文档](https://docs.djangoproject.com/)以获取更详细和最新的信息。
转载请注明出处:http://www.zyzy.cn/article/detail/7140/Django