0

我需要执行django 查询以返回列表中包含特定字符串"amazon"的所有文档,并且该列表存储在 dict 中。该字段是一个字典,字典中的每个键都包含一个列表类型。

我的文档示例:

{
    "collector_id" : 80,
    "market_info" : {
        "market_name_list" : [ 
            "amazon", 
            "souq"
        ],
        "key_2" : [
            "item1_in_list",
            "item2_in_list",
            "item3_in_list"
        ]
    }
}  

market_info 是字典域。

我尝试了很多查询,但都失败了。

query_set = myModel.objects.filter(market_info__contains= 
{'market_name_list': ['amazon']})

这是我的模型:

from djongo import models as db

class info(db.Model):
    collector = db.ForeignKey(Collector, null=True,                   
              on_delete=db.SET_NULL)
    market_info = db.DictField(default={'market_name_list': [],
                                        'search_for_list': []
                                       })
4

1 回答 1

0
found = []
for i in info.objects.all():
    for m in i.market_info:
        if market_info[m] == 'string':
           found.append(i)
于 2019-04-01T19:12:36.487 回答