estoy construyendo algunas consultas de filtro Django dinámicamente, using this example:la construcción de consultas Django filtro dinámicamente con argumentos y kwargs
kwargs = { 'deleted_datetime__isnull': True }
args = (Q(title__icontains = 'Foo') | Q(title__icontains = 'Bar'))
entries = Entry.objects.filter(*args, **kwargs)
no sólo estoy seguro de cómo construir la entrada para args
. Decir que tengo esta matriz:
strings = ['Foo', 'Bar']
¿Cómo llego desde allí a:
args = (Q(title__icontains = 'Foo') | Q(title__icontains = 'Bar')
El más cercano que puedo conseguir es:
for s in strings:
q_construct = Q(title__icontains = %s) % s
args.append(s)
Pero no sé cómo configurar la condición |
.
en una nota al margen, '' reduce' es ahora functools.reduce' en Python 3 https://docs.python.org/3.0/library/ functools.html # functools.reduce – wasabigeek