微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何基于带有 Django 过滤器的键值对从 postgres JSON 字段中检索这些行

如何解决如何基于带有 Django 过滤器的键值对从 postgres JSON 字段中检索这些行

在 Django 我有一个模型:

class NewModelItem(models.Model):
    model = models.ForeignKey(to=NewModel,on_delete=models.CASCADE,related_name='new_model_item')
    field_data = models.JSONField()
    link_data = models.JSONField(null=True)

并喜欢检索:

3    {"name": "105000-001-001","customer_name": "belangrijk sample"}    4    {"index": 4,"project": [1]}
6    {"name": "105000-001-002","customer_name": "nog een belangrijk sample"}    4    {"index": 4,"project": [1]}

基于最后一个字段(即 link_data 字段),特别是当项目包含 1 时。

我尝试将它作为整数而不是数组,但下面的过滤器不会以任何方式检索它们。

lookup = 'link_data__project'
related_model = 4  # this is the field before link_data
id = 1
data = NewModelItem.objects.filter(**{lookup: id,'model': related_model})

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。