2010-05-06 8 views
5

Como el título dice que tengo una lista de objetos Django y quiero obtener una lista de claves principales. Cual es la mejor manera de hacer esto?django convertir la lista de objetos a la lista de claves principales

Sé que podría hacer

my_list = [] 
for item in object_list: 
    my_list.append(item.pk) 

pero se preguntaba si hay o Python Django determinada forma de hacer esto mejor.

Gracias

Respuesta

10

una forma más Pythonic para empezar es:

my_list = [item.pk for item in object_list] 

Una forma Django completo:

my_list = object_list.values_list('id', flat=True) 
+1

... y para conseguir una verdadera lista '()', este último necesita ser envuelto en la llamada 'list()'. – Kimvais

Cuestiones relacionadas