基于dict键生成django查询集

vma*_*tto 2 python django dictionary django-queryset

我有一个像这样的字典:

{
    'key1' : val1,
    'key2' : val2
}
Run Code Online (Sandbox Code Playgroud)

我需要一个类似的查询集

Q(key1__icontains = val1) | Q(key2__icontains = val2)
Run Code Online (Sandbox Code Playgroud)

谢谢

Ign*_*ams 8

reduce(operator.or_, Q(**{key + '__icontains': val}) for (key, val) in D.iteritems())
Run Code Online (Sandbox Code Playgroud)