2010-05-06 21 views
5

Jak podaje tytuł, mam listę obiektów Django i chcę uzyskać listę kluczy podstawowych. Jaki jest najlepszy sposób na zrobienie tego?Konwertuj listę obiektów django na listę kluczy podstawowych

wiem, co mogłem zrobić

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

ale zastanawiałem się, czy nie ma Django lub Python specyficzny sposób to zrobić lepiej.

Dzięki

Odpowiedz

10

Jednym z bardziej pythonic sposób na początek to:

my_list = [item.pk for item in object_list] 

Pełną Django sposób:

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

... i aby uzyskać prawdziwy 'list()', ta ostatnia musi być zapakowana do wywołania 'list()'. – Kimvais

Powiązane problemy