python - 是否有用于查询嵌套 jsonfield 键的 django-orm 查找?

标签 python django django-models django-orm django-jsonfield

我的表有一个名为 meta_data 的 JsonField 列。它的条目之一是:

{'abc':'zyz', 'name':{'pranav':'age', 'john':'age'}}

要查询 Jsonfield,我使用 __has_key 查找:

table.objects.filter(id__in=id_list, meta_data__has_key='name')

我想知道是否有一些 django 查找可以帮助我检查 'name' 内是否有 key 'pranav' ,例如:

table.objects.filter(id__in=id_list, meta_data__has_key__has_key='pranav')

或者类似的东西

感谢您对此的任何意见...!

最佳答案

是的,您可以使用任何您想要的由 __ 分隔的键列表来遍历 JSON,即使键不存在也是如此。如果行中不存在任何键,PostgreSQL 将跳过该行。

关于python - 是否有用于查询嵌套 jsonfield 键的 django-orm 查找?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57414685/

相关文章:

python - 命令行中的Python无法切换

python - 如何使用包含 unicode 的值打印容器对象?

python - form.is_valid() 总是返回 false

django - 在生产服务器中部署 django

Django 嵌套 'with' 和 'block' 标签

python - TypeError get_queryset() 缺少 1 个必需的位置参数 : 'pk'

python - Django 管理员 : Allow ForeignKey to base class to refer to its subclasses

python - 在 Django 中将 REST API 放在哪里

python - django 表 onlineshop_product 没有名为 name 的列

Django ModelForm 验证