2
我有一个字典,如:生成的Django的queryset基于字典的键
{
'key1' : val1,
'key2' : val2
}
我需要一个像
Q(key1__icontains = val1) | Q(key2__icontains = val2)
感谢
我有一个字典,如:生成的Django的queryset基于字典的键
{
'key1' : val1,
'key2' : val2
}
我需要一个像
Q(key1__icontains = val1) | Q(key2__icontains = val2)
感谢
reduce(operator.or_, Q(**{key + '__icontains': val}) for (key, val) in D.iteritems())
有一个更加务实的态度,一个QuerySet ,因为我需要从一个生成各种密钥。
query = None
for key, value in d.iteritems():
if query is None:
query = Q(**{key + "__icontains" : value})
else:
query |= Q(**{key + "__icontains" : value})
不错,简洁。 – JHSaunders 2011-03-18 10:52:33
双星号是什么意思? – 2011-07-29 14:53:59
@ Thr4wn:[Keyword expansion。](http://docs.python.org/tutorial/controlflow.html#unpacking-argument-lists) – 2011-07-29 20:07:54