2010-02-25 25 views

Respuesta

13

Desde el Django q object documentation:

Puede componer sentencias de complejidad arbitraria combinando objetos Q con la & y | operadores y usan agrupamiento entre paréntesis. Asimismo, los objetos Q pueden ser anulados mediante el operador ~, lo que permite búsquedas combinadas que combinan una consulta normal y una consulta (NO) negado:

Q(question__startswith='Who') | ~Q(pub_date__year=2005) 

por lo que recomiendo

Record.objects.filter(Q(parameter__icontains="wd2") | ~Q(parameter__icontains="wd")) 
+0

Wow , no sabía sobre ~ operador. ¡Muchas gracias! – DataGreed

+1

¿No es elegante? ¡Me encanta reutilizar ideas lógicas de bajo nivel en un paradigma de composición de nivel superior! –

Cuestiones relacionadas