簡體   English   中英

如何使用嵌套字典查詢 Django JSONField?

[英]How to query a Django JSONField with a nested dictionary?

我正在使用 Django 3.2.3 / Python 3.7.8 / PostgreSQL 12.3

模型.py

class Booking(models.Model):
    reference = models.CharField(max_length=15, unique=True)
    services = models.JSONField()

services結構為:

{
'1':{
    'id': 3,
    'name': 'Name 1'
    },
'2':{
    'id': 4,
    'name': 'Name 2
    },
'3':{
    'id': 3,
    'name': 'Name 3
    },
 ...
}

如何過濾具有id 3servicesBooking

我試過Booking.objects.filter(services__contains=[{'id': 3}])但無法通過。

請幫忙。

我認為您應該嘗試is_null查找。

而不是contains ,如下所示:

Booking.objects.filter(services__3__isnull=False)

我還建議您在此處查看 django JSON 查詢集文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM