Экстракт Джанго Кверсета PKs

#django

Вопрос:

У меня есть следующий код.

 queryset = Registry.objects.filter(
        epas_id__contains=uuid_obj_id
    ).values_list('pk', flat=True)
 

Основываясь на моих данных, это правильно возвращает следующее:

 <QuerySet [UUID('d9a0977c-5bc0-4667-af24-5e95b83761d4'), UUID('b2d0f086-0a55-44cc-b1ba-3ebf598d24ae')]>
 

Но то, что я хочу сделать, это извлечь только значения pk из списка, так что что-то вроде этого:

 ['d9a0977c-5bc0-4667-af24-5e95b83761d4', 'b2d0f086-0a55-44cc-b1ba-3ebf598d24ae']
 

Любые мысли и помощь о том, как я могу этого достичь, будут оценены по достоинству.

Ответ №1:

Мы можем работать с пониманием списка и обращаться str(…) к каждому элементу, например:

 queryset = Registry.objects.filter(
    epas_id__contains=uuid_obj_id
).values_list('pk', flat=True)

result = [str(pk) for pk in queryset] 

Комментарии:

1. Великолепно, спасибо. Понимание списка было последним, чего мне не хватало. Это работает, спасибо.