2012-03-23 16 views

Respuesta

291
Reserved.objects.filter(client=client_id).order_by('-check_in') 

Aviso del - antes check_in.

Django Documentation

+0

Eso es lo que lo hace encantador. Gracias. – Ayush

43
Reserved.objects.filter(client=client_id).order_by('-check_in') 

Un guión "-" delante de "check_in" indica orden descendente. El orden ascendente está implícito.

No es necesario agregar un todo() antes del filtro(). Eso todavía funcionaría, pero solo necesita agregar all() cuando desee todos los objetos desde el QuerySet raíz.

Más sobre esto aquí: https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-specific-objects-with-filters

+0

Más limpio que la respuesta aceptada, no hay razón para tener .all(). Filter (xxx). –

9

funciona eliminando .all():

Reserved.objects.filter(client=client_id).order_by('-check_in') 
+3

Esto es esencialmente idéntico a la respuesta de @ leonardo-z, ¿no es así? –

+1

En lugar de volver a publicar la misma respuesta, votala. – AKSiddique

9

También puede utilizar la siguiente instrucción:

Reserved.objects.all().filter(client=client_id).order_by('check_in').reverse() 
+1

Puede, pero sospecho fuertemente que es más eficiente dejar que el servidor SQL maneje la orden, al menos en teoría. Es lindo y claro, sin embargo. –

10

por orden ascendente:

Reserved.objects.filter(client=client_id).order_by('check_in') 

por orden descendente:

1. Reserved.objects.filter(client=client_id).order_by('-check_in') 

o

2. Reserved.objects.filter(client=client_id).order_by('check_in')[::-1] 
0

Esto es trabajo para mí.

latestsetuplist = SetupTemplate.objects.order_by('-creationTime')[:10][::1] 
0

Añadiendo el - se ordenará en orden descendente. También puede configurar esto agregando un orden predeterminado al meta de su modelo. Esto significa que cuando haces una consulta simplemente haces MyModel.objects.all() y saldrá en el orden correcto.

class MyModel(models.Model): 

    check_in = models.DateField() 

    class Meta: 
     ordering = ('-check_in',) 
Cuestiones relacionadas